【发布时间】:2017-09-25 00:55:46
【问题描述】:
我正在尝试解析一些格式不正确的 XML。
我说格式不好 - 因为每个人都知道您不应该在 XML 文件中包含未转义的 & 符号。
问题是,我需要从 XML 文件中收集一些 unicode 格式的短语。我需要格式尽可能接近原始格式。您可以在控制台日志中复制此问题...
console.log($("<test>â</test>").text())
// Outputs 'â' instead of desired 'â'
我已经尝试了escape、unescape()、encodeURI()、decodeURI() 的所有组合,我能理解。
我已经尝试了 jQuery 的 ajax({processData: bool}) 标志的两种设置。我找到的所有答案都指向这些解决方案 - 似乎它们都不起作用......
如何修改以上代码输出原始XML内容?
【问题讨论】:
-
不是。这不是一个通用的转义/取消转义问题 - 它特定于 unicode。如果你要标记,至少阅读问题。谢谢。
-
我阅读了这个问题。只是误会了。下次尝试使用一些 xml 示例代码和 javascript 代码以适当的方式解释您的问题,这些代码解释了您如何尝试读出这些短语。您的标题具有误导性:您不想
parse它。您想从 xml 中检索它而不与 unicode 字符进行自动交换。那是不同的东西。 -
在您的示例中,可以将所有
&amp;替换为&amp;。您不需要创建 HTMLNode 的开销:console.log($('<test>'+'&#xE2;'.replace('&', '&amp;')+'</test>').text())Here is a little fiddle
标签: javascript jquery xml unicode