Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 循环显示未定义,我可以';我看不出我在哪里';我弄错了_Javascript_Jquery_Json_Cordova - Fatal编程技术网

Javascript 循环显示未定义,我可以';我看不出我在哪里';我弄错了

Javascript 循环显示未定义,我可以';我看不出我在哪里';我弄错了,javascript,jquery,json,cordova,Javascript,Jquery,Json,Cordova,我正在通过jsonp循环处理.NETWeb服务中的数据。类似的代码在其他地方也适用,但我看不出哪里出了问题 通过以下方式检索数据: if (pageId === 'alerts') { var Username = localStorage.getItem("Username"); var SessionKey = localStorage.getItem("SessionID"); console.log(Username); c

我正在通过jsonp循环处理.NETWeb服务中的数据。类似的代码在其他地方也适用,但我看不出哪里出了问题

通过以下方式检索数据:

if (pageId === 'alerts') {
        var Username = localStorage.getItem("Username");
        var SessionKey = localStorage.getItem("SessionID");
        console.log(Username);
        console.log(SessionKey);
        $.mobile.loading( 'show', { theme: "b", text: "Loading", textonly: false});
        $.ajax({
            crossDomain: true,
            contentType: "application/json; charset=utf-8",
            url: "http://redacted/GetData.asmx/GetLostAnimals",
            data: {Username: Username, SessionKey: SessionKey },
            dataType: "jsonp",
            success: myAlerts
        });
    }

var lostSelectedPet = 0;
function myAlerts(data)
{
    $("#alertsListMissingPets").empty();
    $.mobile.loading( 'hide', { theme: "b", text: "Loading", textonly: false});

    $.each(data, function(index) {
        console.log(data[index].LostDate)
        $("#alertsListMissingPets").append(" <li><a href=\"#\">"+ data[index].AnimalKey + " <span class=\"ui-li-count\">12</span></a></li>");
    });
    $("#alertsListMissingPets").listview('refresh');
}

$(document).on('click', '#alertsListMissingPets li a', function(){
    localStorage.setItem("lostSelectedPet", $(this).attr('data-custom'));
    editingId  = $(this).attr('data-custom');

});
然而,它返回的结果是——它显示了5项,但只有一个结果,上面的json是完整的响应


您不是在数组上循环,而是在对象上循环。对象中有5个关键点,因此输出中有5行

将响应更改为数组

callback(
 [{  //<-- added [
    AnimalKey: "f152e1c6baca181d9f3ca1f18c91cc41f23fc122545d9c8bff9f4cb2ea449874",
    LostDate: "11/06/2014 16:14:19",
    FoundDate: "",
    LostKey: "7560733274a7ca2ec43a85fcb9abd345fdc876acffac2b75ace7946035122fbd",
    Resp: "OK"
 }]    //<-- added ]
)
回调(

[{//如果这是返回的全部
数据
——它不是数组;因此您不需要
。每个
循环。只需使用
数据访问它。AnimalKey
。如果数组也是有效的返回值,您可以使用
$.isArray
或类似的方法进行检查。哦!我错过了。非常感谢
callback(
 [{  //<-- added [
    AnimalKey: "f152e1c6baca181d9f3ca1f18c91cc41f23fc122545d9c8bff9f4cb2ea449874",
    LostDate: "11/06/2014 16:14:19",
    FoundDate: "",
    LostKey: "7560733274a7ca2ec43a85fcb9abd345fdc876acffac2b75ace7946035122fbd",
    Resp: "OK"
 }]    //<-- added ]
)