douzhuo1853 2015-01-06 07:02
浏览 134
已采纳

未捕获的TypeError:无法读取属性JSON

I have JSON PHP Output below

{"data_0":{"data_1":{"A":0,"B":0},"data_2":{"C_C":"CC","D_D":"DD"}}}

In jQuery have code :

$.ajax({
    url : 'process.php',
    dateType: 'json',
    type: 'POST',
    data : {val : data_val},
    success: function(data){
        $(data.data_0.data_2).each(function(key, value) {
        alert(key + " " + value);
        });

But when run I received error : Uncaught TypeError: Cannot read property 'data_2' of undefined.

How to fix it ?

Thanks you so much.

  • 写回答

3条回答 默认 最新

  • douzhuan1467 2015-01-06 07:06
    关注

    change this:

    dateType: 'json',
    

    to this;

    dataType: 'json',
    

    You have a type it should be dataType not dateType.


    Also you should use $.each() utility method of jQuery instead of .each():

    $.each(data.data_0.data_2, function(key, value) {
        alert(key + " " + value);
    });
    

    $.each() docs:

    The $.each() function is not the same as $(selector).each(), which is used to iterate, exclusively, over a jQuery object. The $.each() function can be used to iterate over any collection, whether it is an object or an array. In the case of an array, the callback is passed an array index and a corresponding array value each time.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?