我有以下代码从php脚本接收地址列表,然后发送它们进行地理编码到谷歌地图,然后创建标记和信息窗口。
我的目标是在信息窗口中显示从php脚本收到的原始地址。
但是在正确创建标记的同时,所有信息窗口上的地址都是相同的 - '中的最后一个变量的值为'循环。
我的问题是:如何正确地将地址传递给回调函数?
$.getJSON('dmvsearch.php?zipcode='+zipcode, null, function (res) {
for (var x = 0; x < res.length; x++) {
var address=res[x];
$.getJSON('http://maps.googleapis.com/maps/api/geocode/json?address='+address+'&sensor=false', null, function (data) {
var p = data.results[0].geometry.location
var latlng = new google.maps.LatLng(p.lat, p.lng);
var marker = new google.maps.Marker({
position: latlng,
map: map
});
var infowindow = new google.maps.InfoWindow();
infowindow.setContent('<div><strong>' + address + '</strong><br>');
marker.addListener('click', function() {
infowindow.open(map, marker);
});
});
}
});
&#13;