Jquery JSON响应未定义

时间:2014-05-28 18:42:55

标签: php jquery ajax json response

我有一个脚本对php文件进行ajax调用,php文件返回两个值,一个lat和一个long。

ajax响应是正确的,当检查firebug时我得到了这个回复:

[{"latitude":"-0.758623","longitude":"52.047870"}]

这是我用来拨打电话的代码,我不明白为什么response.latituderesponse.longitude作为未定义返回:

 $.ajax({
        type: "POST",
        url: "http://www.url.com/route/findRoute",
        data: {postcode: postCode},
        dataType: 'json',
        success: function(response)
            {
                alert(response.longitude);
            }
        });

请有人指出我正确的方向吗?

非常感谢

吉姆

2 个答案:

答案 0 :(得分:3)

这是你需要像这样循环的数组:

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

    console.log(item);

});

或者如果它始终是单个项目,那么您可以像这样访问第一个索引:

console.log(reponse[0].latitude);
condole.log(reponse[0].longitude);

WORKING FIDDLE

答案 1 :(得分:1)

由于响应是一个数组。你可以循环遍历所有元素

response.forEach(function(data){
    console.log(data.latitude);
});