问题是我有这个代码:
function calcDist() {
var calcdirection = document.getElementById('street').value + "+" + document.getElementById('number').value + "+UK";
for (var x = 0; x < dbdirection.length; x++) {
var dirdest = dbdirection[x].replace(" ","+")+ "+UK";
$.getJSON("http://maps.googleapis.com/maps/api/distancematrix/json?origins="+calcdirection+"&destinations="+dirdest+"&mode=walking&language=es-ES&sensor=false", function(datos) {
var distance = datos.rows[0].elements[0].distance.value;
// return distance;
});
// alert(distance);
}
}
我无法获得getJSON
之外的距离值。我正在搜索这个,我发现我可以在网址的末尾使用"&callback="
,但它对我不起作用(可能是因为我不确定如何使用它)。
我该如何解决?
提前致谢
答案 0 :(得分:1)
将结果存储在包含JQuery.data()
函数的HTML元素中:
$('#div_id').data('distance', distance)
然后你可以加载结果:
var distance = $('#div_id').data('distance')
使用async: false
中的$.getJSON()
选项来避免undefined
错误