0
我一直在使用一個小型JavaScript項目,它將座標存儲在xml/kml文件中,並將它們顯示在自定義Google地圖應用程序中。除了反向地理編碼外,我已經按照我的要求工作。當我在回調函數中運行代碼時,我能夠顯示格式化的地址,但我找不到存儲地址供以後使用的方法(對於動態事件,例如當用戶單擊標記時顯示完整地址)。從反向地理編碼回調中獲取地址
有沒有辦法將地址存儲在回調函數中,然後再獲取它?每當我嘗試,它說地址是未定義的。請看下圖:
var address;
var geocoder = new google.maps.Geocoder();
var latlng = new google.maps.LatLng(lat, lng);
geocoder.geocode({'latLng': latlng}, function (results, status) {
if (status == google.maps.GeocoderStatus.OK) {
if (results[1]) {
address = results[1].formatted_address;
alert(address); // this displays correctly
}
else {
alert("No results found");
}
}
else {
alert("Geocoder failed due to: " + status);}
}
);
alert(address); // this displays 'undefined'
謝謝@Jordan,我認爲它必須處理異步回調。我只是簡單地將'geocoder.gecode'代碼改寫成了我的'click'處理程序事件。 – Austin