我正在解析 HTML 元素中包含的 JSON。
考虑这个标记:
<div id="1">
{"string":[""\u041a\u0410\u041a""]}
</div>
这个脚本:
var a = $.parseJSON($("#1").html())
这将返回错误(“Uncaught SyntaxError: Unexpected token\”),因为 "
被 html()
转换为 "
> 方法。
在这种情况下如何让 jQuery 不解析 HTML? $.text()
也不起作用。或者我做错了什么?
jsFiddle:http://jsfiddle.net/VJvpY/6/
编辑:请注意,错误将仅显示在控制台中。
编辑2:我需要解析 JSON 并用它创建一个 JS 对象。
最佳答案
你不能不将 json 放在文本区域中,这样浏览器就不会解析它(jQuery 不会弄乱你的引号。)
但是,由于“/”,您的 json 仍然无法被 jquery 解析,我不知道如何解决这个问题。即使逃脱了它们,它仍然不起作用。
关于jquery - 如何在不将 " 转换为 "的情况下获取元素的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11211213/