在$ .each中访问json的值时获取未定义

时间:2013-12-30 23:19:41

标签: jquery ajax json

这是遍历我通过ajax调用接收的响应json对象的每一个。

$.each(response, function(i, item) {
    alert(item.pin + item.place);
    selected = response[i].pin.substr(0, zip.length);
    remain = response[i].pin.substr(zip.length);
    $(".zip-drop").append("<p class='zip-suggest'><span class='suggest-pin'><b>"+selected+"</b>"+remain+"</span><span class='suggest-place'>"+item.place+"</span></p>");
    return i < Object.keys(response).length - 1;
});

一切正常,但在控制台中我得到undefined item.pin虽然警报产生了所需的结果。这个undefined问题使得ajax调用停留了很长时间。我正在使用加载程序映像,一旦进行了ajax调用,它就会永远保留。

用于删除undefined错误的任何解决方案。我不明白为什么?

1 个答案:

答案 0 :(得分:1)

您也可以删除所有内容并在开头进行检查......例如。

if(!response[i].pin) return false; 
欢呼:)