我从我的AJAX调用中得到了一个JSON对象(我认为),如下所示:
$.ajax({
url: 'testing.php',
type: 'POST',
data: {
code: code_got,
},
success: function(data) {
var list_data = data;
console.log(list_data);//this is the object shown below
var list_name = list_data['data']['name'];
console.log(list_name);//this throws an error that `name` is undefined
}
});
});答复如下:
{
"total" : 5,
"data" : [
{
"id" : "312464ee1e",
"stats" : {
"members" : 58,
},
"web_id" : 11966492,
"name" : "List 1"
},
{
"id" : "312464ee1e",
"stats" : {
"members" : 123,
},
"web_id" : 1196649,
"name" : "List 2"
},
]
}我正试着(首先)得到第一个名单的名字。我试过了,但没用:
var list_data = data;
console.log(list_data);//this is the object shown above
var list_name = list_data['data']['name']; //this throw an error "Uncaught TypeError: Cannot read property 'name' of undefined"第二,我想做一个each来从数据中获取所有的name项,但是在我找出JSON结构之前,我无法做到这一点。
我在这里做错什么了?
发布于 2015-08-13 20:30:47
首先,您必须将其解析为json,然后循环遍历它。
success: function(data) {
var lists = JSON.parse(data);
var dataset = list['data'];
for(var i=0; i< dataset.length; i++)
console.log(dataset[i]['name']);
}或者您可以使用$.each循环它:
$.each(dataset, function(index, d){
console.log(d.name);
});另外,如果您知道返回的数据是json,则可以不使用JSON.parse(),而是将ajax的dataType参数设置为'json'。
$.ajax({
....
dataType: 'json',
....
});发布于 2015-08-13 20:20:30
您正在寻找数组list_data['data']上的对象属性。
您希望在该数组中具有对象的属性。
试一试
var list_name = list_data['data'][0]['name'];发布于 2015-08-13 20:21:09
我认为您需要将JSON中的职位添加到末尾。
var list_name = list_data['data'][0]['name']这里是来自W3Schools的JSON上的一个W3Schools
https://stackoverflow.com/questions/31997629
复制相似问题