2012-10-31 52 views
0

我一直在撓頭,試圖弄清楚這一點。我有一個site.master頁面服務器端變量無法在鏈接元素中解析

我只是想做一件簡單的事情。我包括在報頭中

<link rel="canonical" href="<%=CannoicalURL%>" /> 

上述然而,總是解析爲Views/CMSTemplates/%3C%25=%20CannoicalURL%20%25%3E 因此,換句話說,鏈接元素,CannoicalURL的值甚至沒有呈現

CannoicalURL是一個字符串變量i設置在後面的代碼,我檢查調試器的價值,它是好的...

更進一步,我甚至創造了一個dummie的javascript下面

<script> 

    var a = <%=CannoicalURL%>; 
</script> 

這完美的作品。

有人可以解釋爲什麼它不適用於元素?任何解決方案/建議都會很棒。

感謝

+0

這不是因爲你拼寫爲「規範」錯了,是嗎?你能發佈你的變量聲明和它的上下文嗎? – pseudocoder

+0

@pseudocoder我不這麼認爲,因爲他們在其他地方使用了相同的表達方式(在腳本標籤中),它運行良好 – Ian

+0

這不是引號嗎?嘗試在變量中傳遞引號而不是將它們包含在頭部的字符串中。 –

回答

-1

是你的頭標記打上runat="server"?如果是這樣,由於ASP.NET正在管理控件,因此該控件中的標記無法在內聯中修改。

,如果是這樣的話,從你的<head>標籤移除runat="server"

+0

Oo嘗試在ASP.net的任何地方運行一個控件,從代碼背後,沒有運行在服務器連接... –

+0

@RickCalder a 標記不是一個asp.net控件。這是一個html標籤。也許你應該嘗試從head標籤中刪除runat = server屬性,並且看到它不是必需的。 – Fisch

+0

以某種方式閱讀這個錯誤,是不是我低估了你,只是讓你知道。 –