我的文字显示为html,我用htmlencode过滤了内容。
当我将控件更改为文本框时,我单独留下了htmlencode代码,它大部分都有效。但是,当有国际字符时,例如éúáó,页面上的ajax调用停止了工作。页面实际显示正常,没有错误 - javascript或其他,但页面有效停止工作。
我删除了htmlencode,现在一切正常。该应用程序定义为utf-8。
我只是好奇是否有人理解发生的事情。
答案 0 :(得分:1)
我的猜测是你的Ajax调用使用HTTP GET方法,并且你使用的是HTML编码而不是URL编码。因此,从Ajax调用构建的URL可能包含´
(é
的HTML编码)等字符,当它们包含重音字符时,这些会破坏您的URL方案,导致请求永远不会发生它到你的服务器端控制器。 é
的网址编码实际上是%E9
。 URL编码和HTML编码不同。
当你删除了HtmlEncode调用时,我想它修复了&
打破URL方案的问题。如果到目前为止我是正确的,最好将Ajax调用更改为使用HTTP POST而不是HTTP GET,以确保消除任何其他URL问题。