ASP.NET实体在代码隐藏中破坏javascript

ASP.NET实体在代码隐藏中破坏javascript,javascript,entity,code-behind,replace,Javascript,Entity,Code Behind,Replace,我使用超链接控件在codebhind中执行以下操作: hlNonTerminal.Attributes[“onclick”]=string.Format(“highlightTokenUsage('{0}');”,非终端) 但是“字符”被asp.net替换,浏览器因此获得: 城市 如何关闭或绕过它?这发生在用户控件内部,但包含它的页面具有ValidateRequest=“false”。编码机制(可能)在AttributeCollection类的底层呈现方法中实现,因此重写服务器控件并修改呈现逻辑

我使用超链接控件在codebhind中执行以下操作:

hlNonTerminal.Attributes[“onclick”]=string.Format(“highlightTokenUsage('{0}');”,非终端)

但是“字符”被asp.net替换,浏览器因此获得:

城市

如何关闭或绕过它?这发生在用户控件内部,但包含它的页面具有ValidateRequest=“false”。

编码机制(可能)在AttributeCollection类的底层呈现方法中实现,因此重写服务器控件并修改呈现逻辑将改变这一点。但是,我严格建议您不要这样做,因为当前的实施效果良好


为什么要这样做?在传递到JavaScript引擎之前,'将是HTML未切换到的,因此您遇到的任何问题都不是来自此。它对我来说似乎工作正常。您能检查一下是否有任何地方正在对hlNonTerminal.Attributes[“onclick”]进行HtmlEncode()替换吗?