我正在尝试使用jquery的getJSON方法读取本地json文件,所以我编写以下代码来阅读,但是控制台日志在firefox中工作正常并显示输出但不能在chrome中工作。 在chrome上我遇到了这个错误:
Request Failed: parsererror, SyntaxError: Unexpected token } in JSON at position 951
这是我写的代码:
$(document).ready(function(){
$.getJSON('http://localhost/page2/data/cd.json',function(data){
alert("success");
console.log(data);
})
.fail(function( jqxhr, textStatus, error ) {
var err = textStatus + ", " + error;
console.log( "Request Failed: " + err );
});
});
我在Xampp本地服务器上托管了这个文件, 我还检查JSON文件以进行验证。 该文件是有效的JSON文件。
答案 0 :(得分:0)
{
"country": {
"city": {
"1": "A",
"2": "B"
},
"cars": {
}
}
}
这里的汽车细分市场没有任何价值,所以当我在JSONLint.com上查看它时,我把它保持为空,它说它是有效的JSON。和firefox也没有显示任何错误,但chrome确实如此。所以我将新的键值添加到汽车中,如下所示。
{
"country": {
"city": {
"1": "A",
"2": "B"
},
"cars": {
"1": "none"
}
}
}
并开始使用chrome。任何人都可以解释为什么它无效到chrome?但对Firefox有效。
答案 1 :(得分:0)
JSON必须存在问题,请在https://jsonformatter.curiousconcept.com/
上验证您的JSON数据祝你好运
答案 2 :(得分:0)
在删除所有"回车后,您的测试json数据可以正常使用chrome" 你可以用JSON.parse测试它(' {" country":{" city":{" 1":" A" ;," 2":" B"},"汽车":{}}}');在chrome控制台中。 enter image description here
根据spec,它允许使用空对象作为值。 谢谢, 永