我目前正在将一组 ASP 经典页面转移到我们新的基于 MVC 的 Intranet 中。虽然我没有进行任何重大的功能更改,但我正在进行一些 UI 改进和一些最佳实践。然而,这会引发特殊字符的问题。
一个部分通过临床测试的下拉列表工作,然后通过测试名称上的查询字符串获取。然而 ASP.net 的 HTMLEncoding 过于激进(尽管它是 UTF-8,但它编码的字符范围很广)。这会导致 HTML 编码的字符被 URL 编码,并且整个事情都会引发“潜在危险请求”错误。
我无法对测试名称进行 HTMLEncode,有权更改此名称的人非常有限,但这不是我想要开始的路径。
这让我不得不取消编码字符串然后重新编码,但 JavaScript 没有原生 HTMLDecode 函数。与其获取一长串字符并在字符串上运行替换,我想知道是否有一种简单的方法可以从 HTML 编码的字符直接转换为百分比编码的字符,即,而不是像 &xxx; 那样对某些内容进行解码和重新编码。= %(xxx/2)