我有一个脚本对php文件进行ajax调用,php文件返回两个值,一个lat和一个long。
ajax响应是正确的,当检查firebug时我得到了这个回复:
[{"latitude":"-0.758623","longitude":"52.047870"}]
这是我用来拨打电话的代码,我不明白为什么response.latitude
和response.longitude
作为未定义返回:
$.ajax({
type: "POST",
url: "http://www.url.com/route/findRoute",
data: {postcode: postCode},
dataType: 'json',
success: function(response)
{
alert(response.longitude);
}
});
请有人指出我正确的方向吗?
非常感谢
吉姆
答案 0 :(得分:3)
这是你需要像这样循环的数组:
$.each(response,function(index,item){
console.log(item);
});
或者如果它始终是单个项目,那么您可以像这样访问第一个索引:
console.log(reponse[0].latitude);
condole.log(reponse[0].longitude);
答案 1 :(得分:1)
由于响应是一个数组。你可以循环遍历所有元素
response.forEach(function(data){
console.log(data.latitude);
});