2012-10-31 21 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

以某种方式阅读这个错误,是不是我低估了你,只是让你知道。 –