0

我知道已经有很多与这个主题相关的问题,但我尝试了很多,但我仍然无法获得值。

我正在使用 firbug,我得到了正确的响应:-

[{"id":4,"comments":1,"likes":5,"books":3,"name":"steve"}] 

但我无法在页面上显示它们。当我尝试 alert(data.id) 时,我在警报框中未定义。这是我的代码:-

$.ajax({
                type: "GET",
                url: "getdata.php",
                data: dataString,
                dataType:"json",
                success: function(data){
                               alert(data.id);

                    }
                });

我试过了

$.each(data, function (key, element) {
                            alert(key); 
                            alert(element); 
                        });

这在警报框中显示键为 0,但元素为 [object Object]

4

1 回答 1

5

这是因为您的响应是一个数组。

要么做

success: function(data){
    alert(data[0].id);
}

或者只返回一个对象

{"id":4,"comments":1,"likes":5,"books":3,"name":"steve"}

或者如果您想保留一个数组,请each使用

$.each(data, function (key, element) {
    alert(key); 
    alert(element.id); 
    alert(element.comments); 
    alert(element.likes);
    ... 
});
于 2013-03-26T21:37:00.973 回答