我有一个返回值
的JQuery“POST”方法对象:[{"in_approved":0, "out_approved":0},{"in_approved":1, "out_approved":2}]
Ajax方法:
$.ajax({
data: {
"start_date" : startDate,
"end_date" : endDate
},
url: "/admin/analytics",
type: 'POST',
dataType: 'json',
success: function(response)
{
// Accessing returned object
},
error : function(request, status, thrownError){
alert("Error");
return;
}
});
现在,要访问我正在使用的返回对象
$.each(response.data, function(index,row){
var in_approved = row.in_approved;
alert(in_approved); // just to see if the value is being stored in the variable.
});
但是当我这样做时,我收到一个错误:
Uncaught TypeError: Cannot read property 'length' of undefined
任何人都可以向我解释这个错误意味着什么吗?
还有如何访问返回对象的值?
答案 0 :(得分:1)
response
将是您发布的数组。它没有data
属性,所以当你寻找它时,它将不可避免地被找到!只需遍历数组:
$.each(response, function(index,row){
答案 1 :(得分:1)
response
是一个对象数组。所以你需要将它作为一个数组进行迭代。
$.each(response, function(index,row){
但是你试图迭代 response.data
您的$.each
将对此对象起作用
data : [{"in_approved":0, "out_approved":0},{"in_approved":1, "out_approved":2}]