【发布时间】:2015-03-20 10:09:56
【问题描述】:
我正在尝试创建一个简单的小 jquery 函数,该函数从 url 中提取 JSON 数据,然后遍历每个对象。我要做的就是控制台记录 object.name 以便我知道它正在工作。到目前为止它不起作用:(我检查了 Chrome 开发者控制台中的网络选项卡,并在响应中显示返回了 json 数据。问题是我无法将 object.name 获取到 console.log。如果有人可以帮忙指出问题,我会很高兴的。
这是脚本:
function getJSON(){
$.ajax({
type: 'GET',
url: '/api/data.json',
success: function(data){
$.each(data, function(index, object){
console.log(object.name);
});
}
});
}
getJSON();
这是 JSON 数据:
[
{
id: 1,
name: "Greg",
lastname: "Sugaro",
school: "Georgia Tech"
},
{
id: 2,
name: "Mike",
lastname: "Wilder",
school: "UGA"
}
]
【问题讨论】:
-
在每次调用之前做一个
console.log(data),看看它是否被调用...还要检查你的浏览器控制台,看看是否记录了任何错误 -
@ Arun :我在 $.each 之前尝试了 console.log(data) 并且没有输出任何内容。 Bowser 控制台中没有记录任何错误。
-
@Toshi 尝试在
success之后将complete: function(xhr, status){ console.log(status); }添加到您的 ajax 调用中。 -
试试`$.getJSON('/api/data.json',function(data){ console.log(data); }) `
-
数据是
JSON吗?id、name、lastname、school应该用双引号括起来吗? ;"id","name","lastname","school"?见stackoverflow.com/questions/8294088/javascript-object-vs-json,benalman.com/news/2010/03/theres-no-such-thing-as-a-json