2

値を返す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

このエラーの意味を説明できる人はいますか?

また、返されたオブジェクトの値にアクセスする方法は?

4

2 に答える 2

1

responseあなたが投稿した配列になります。プロパティがないdataので、探しても見つからないこと必至!配列をループするだけです:

$.each(response, function(index,row){
于 2013-06-06T23:13:28.970 に答える
1

responseオブジェクトの配列です。したがって、配列として反復処理する必要があります。

$.each(response, function(index,row){

しかし、あなたはresponse.dataを反復しようとしています

あなた$.eachはこのオブジェクトに取り組みます

data : [{"in_approved":0, "out_approved":0},{"in_approved":1, "out_approved":2}]
于 2013-06-06T23:18:05.307 に答える