【发布时间】:2018-01-10 10:43:37
【问题描述】:
我读过this answer
我这样做了:
function countryPage() {
$.ajax({
url: "https://en.wikipedia.org/w/api.php?action=parse&disablelimitreport=true&format=json&prop=text|langlinks&noimages=true&mobileformat=true&page="+ curTitle + "&callback=?",
contentType: "application/json; charset=utf-8",
dataType: "jsonp",
success: countryPageSuccess
});
}
function countryPageSuccess(counterObject, data) {
$.each(data, function(i, item) {...
但是如果我按照那个答案去做
$.each(JSON.parse(data), function(i, item) {
我明白了
未捕获的 SyntaxError:位置 1 处 JSON 中的意外标记 o
【问题讨论】:
-
登录
data并查看它包含的内容,很可能它已经是一个对象 -
@PatrickEvans 好的,但如果我不这样做
JSON.parse我会在问题标题中收到错误,是的,我确认它已经是一个对象 -
success回调的第二个参数是 textStatus。它不会是 JSON。 JSON 响应应该已经在counterObject中反序列化 -
textStatus 是什么意思? @菲尔
-
您从 API 获得的数据是第一个参数,而不是第二个参数(您称之为数据)。查看jQuery ajax 参考,了解成功回调是如何定义的
标签: javascript jquery json