提问者:小点点

从AJAX循环JSON数据成功吗?


我从PHP页面收到一个Json输出,如下所示

null

[{"x":"2018-03-20","y":1,"z":7},{"x":"2018-03-22","y":31,"z":5},{"x":"2018-03-25","y":7,"z":21}]

null

我如何循环结果,这样我就可以访问每个元素了?我已经尝试了类似下面的东西,但这似乎不起作用。

null

function LoadResultMorris()
{
$.ajax({
    type: "POST",
    url: 'admin/data.php',
    data: {type1: 'search1'},
    success: function(data){
$.each(data.data, function(key, value) {
    alert(data[key]);
    alert(data[value]);
});
        }
});

}

null


共2个答案

匿名用户

按以下格式循环所有对象列表

$.each(data.data, function(key,obj) {
   //Access Property in format Object.Atribute
   alert(obj.x); //X Atribute
   alert(obj.y); //Y Atribute
   alert(obj.z); //Z Atribute
}); 

匿名用户

鉴于您使用的数据结构是一个简单的对象数组,因此在这里不需要jQuery。您可以使用标准的foreach()循环,通过名称访问对象的属性。试试看:

null

// mock AJAX response:
let data = [{"x":"2018-03-20","y":1,"z":7},{"x":"2018-03-22","y":31,"z":5},{"x":"2018-03-25","y":7,"z":21}];

// inside the AJAX success handler:
data.forEach(object => {
  console.log(object.x, object.y, object.z);
});