有人可以帮我解决这个问题:
我收到意外的令牌错误,我已经验证了我的json文件和JS。但我仍然收到错误。
HTML
<div class="load"></div>
这是JS
/* Table load */
var uri = 'http://*****.com/TestFiles/';
$.ajax({
url: uri + 'json/banks.json',
dataType: 'jsonp',
success: function(data){
var account = data;
console.log(data);
$.each(account, function(Key, Val) {
var row=$('<div class="row"></div>');
console.log(account);
$.each(Val, function(k, v){
console.log(account);
$('<div class="cell"><p>' + v + '</p></div>').appendTo(row);
});
row.appendTo('.load');
});
}
});
这是json文件
{
"count": 5,
"records": [
{
"name": "Big Guy",
"apy": "0.75",
"earnings": "376.41"
},
{
"name": "URGrant",
"apy": "0.87",
"earnings": "436.89"
},
{
"name": "CheatandGrace",
"apy": "0.01",
"earnings": "5.00"
},
{
"name": "The Onion",
"apy": "0.01",
"earnings": "5.00"
},
{
"name": "Pellet Grant",
"apy": "0.01",
"earnings": "5.00"
}
]
}
任何帮助都可能很棒。
答案 0 :(得分:6)
您正在尝试加载JSON:
url: uri + 'json/banks.json',
但是告诉jQuery将其解析为JSONP:
dataType: 'jsonp',
JSONP不是JSON。您需要指定'json'
或更改服务器以使用JSONP进行响应。
<强> JSON 强>:
Content-type: application/json
{ "foo" : "bar" }
<强> JSONP 强>:
Content-type: application/javascript
dynamically_generated_callback_name({ "foo" : "bar" });
(提供JSONP时请注意Rosetta Flash exploit)。