2016-03-08 68 views
0

我们如何同步以下请求。因为它默认是异步的。同步请求谷歌地图地理编码

$.getJSON('http://maps.googleapis.com/maps/api/geocode/json?address="'+address[x]+' '+zipcode_true[x]+' '+city[x]+' '+state[x]+'"&sensor=false',null,function (data) { 
      var p = data.results[0].geometry.location; 

    var latlng = new google.maps.LatLng(p.lat, p.lng); 
var latlng_marker = new Array(); 
latlng_marker[x] = latlng; 
}); 
+0

但为什么呢?这种异步性质似乎是更好的选择。 – Jai

回答

0

这应该是等同于下面的代码同步:

var data = $.ajax({ 
    url: 'http://maps.googleapis.com/maps/api/geocode/json', 
    method: 'GET', 
    async: false, 
    data: { 
     address: address[x] + ' ' + zipcode_true[x] + ' ' + city[x] + ' ' + state[x], 
     sensor: false 
    } 
}); 

var p = data.results[0].geometry.location; 

var latlng = new google.maps.LatLng(p.lat, p.lng); 
var latlng_marker = new Array(); 
latlng_marker[x] = latlng;