htmlencode导致asp.net锁定
我将文本显示为html,并使用html代码过滤内容 当我将控件更改为文本框时,我没有使用htmlencode代码,它基本上可以正常工作。但是,当出现国际字符时,例如úúáó,页面上的ajax调用就停止工作。页面实际上显示正确,没有错误——javascript或其他错误,但页面实际上停止了工作 我删除了htmlencode,现在一切正常。该应用程序被定义为utf-8htmlencode导致asp.net锁定,asp.net,internationalization,html-encode,Asp.net,Internationalization,Html Encode,我将文本显示为html,并使用html代码过滤内容 当我将控件更改为文本框时,我没有使用htmlencode代码,它基本上可以正常工作。但是,当出现国际字符时,例如úúáó,页面上的ajax调用就停止工作。页面实际上显示正确,没有错误——javascript或其他错误,但页面实际上停止了工作 我删除了htmlencode,现在一切正常。该应用程序被定义为utf-8 我只是好奇是否有人知道发生了什么事。我猜您的Ajax调用使用了HTTP GET方法,您使用的是HTML编码而不是URL编码。因此,也
我只是好奇是否有人知道发生了什么事。我猜您的Ajax调用使用了HTTP GET方法,您使用的是HTML编码而不是URL编码。因此,也许从Ajax调用生成的URL包含字符,如
´
(é
)的HTML编码),当它们包含重音字符时,这些字符破坏了您的URL方案,导致请求永远不会发送到服务器端控制器。的URL编码实际上是%E9
。URL编码和HTML编码是不同的
当您删除HtmlEncode调用时,我想它解决了&
破坏URL方案的问题。如果到目前为止我是正确的,那么最好将Ajax调用更改为使用HTTP POST而不是HTTP GET,以确保消除任何其他URL问题。我猜您的Ajax调用使用的是HTTP GET方法,而您使用的是HTML编码而不是URL编码。因此,也许从Ajax调用生成的URL包含字符,如´
(é
)的HTML编码),当它们包含重音字符时,这些字符破坏了您的URL方案,导致请求永远不会发送到服务器端控制器。的URL编码实际上是%E9
。URL编码和HTML编码是不同的
当您删除HtmlEncode调用时,我想它解决了&
破坏URL方案的问题。如果到目前为止我是正确的,那么最好将Ajax调用更改为使用HTTP POST而不是HTTP GET,以确保消除任何其他URL问题。您是否进行过自定义Ajax调用?可能您需要对ajax帖子进行编码,因为可能有一些字符破坏了url帖子。您是否进行过自定义ajax调用?可能你需要对你的ajax帖子进行编码,因为可能有一些字符破坏了url帖子。我不确定你的理论是否正确,但它似乎是合理的。我不确定你的理论是否正确,但它似乎是合理的。