我目前正在尝试在线解析随机JSON文件,您可以尝试链接并亲自查看。无论我寻找什么,我总是在访问数据时得到“未定义”。我只想从json获得某种输出。例如,如何获取文件中的名称列表('nm')?无论我做什么,它总是让我不明确。
$.ajax(
{
type: 'GET',
url: 'http://mysafeinfo.com/api/data?list=englishmonarchs&format=json',
contentType: "application/json; charset=utf-8",
dataType: "json",
async: false,
success: function(r)
{
alert(r.example);
}
});
答案 0 :(得分:1)
从该API获取的数据是一个像这样的对象数组。
[{
nm: "Edward the Elder",
cty: "GB",
hse: "House of Wessex",
yrs: "899-925"
}, {
nm: "Athelstan",
cty: "GB",
hse: "House of Wessex",
yrs: "925-940"
}]
迭代对象数组的方法之一是$.each
success: function(r)
{
$.each(r, function(index, value){ // iterating over each object
console.log(value.nm); // <---- accessing nm of each object
});
}
答案 1 :(得分:0)
您没有迭代结果集。
这更短且可读。
$.getJSON("http://mysafeinfo.com/api/data?list=englishmonarchs&format=json", function (data) {
$.each(data, function (index, value) {
alert(index + ": " + value.nm);
});
});
http://jsfiddle.net/5skony7y/2/
打开Chrome控制台,您会看到以下内容: