我尝试在脚本标记<script src='//remotehost/test.js'>{'1':'2'}</script>
dom = document.scripts[document.scripts.length - 1]; //it gets the correct tag, checked
d = $.parseJSON($(dom).html());
但我得到SyntaxError: JSON.parse: expected property name or '}' at line 1 column 2 of the JSON data
错误。我检查了http://api.jquery.com/jquery.parsejson/,$(dom).html()
的结果被列为格式错误的JSON字符串结果之一。如何使用jQuery解析JSON?
答案 0 :(得分:3)
问题是它不是有效的JSON。有效的JSON使用双引号。
将您的HTML更改为:
<script src='//remotehost/test.js'>{"1":"2"}</script>
答案 1 :(得分:1)
{'1':'2'}
是一个JavaScript对象,而不是正确的JSON。
Object的JSON格式是String使用双引号,如:'{"1": "2"}'