我試圖讓谷歌地圖address_components
和只設法做到以下幾點:如何將值傳遞給Javascript中的另一個函數?
$(function() {
$("#spot_address").autocomplete({
//This bit uses the geocoder to fetch address values
source: function(request, response) {
geocoder.geocode({'address': request.term }, function(results, status) {
for (var i = 0; i < results[0].address_components.length; i++)
{
var addr = results[0].address_components[i];
if (addr.types[0] == 'country')
country: addr.long_name;
}
response($.map(results, function(item) {
return {
label: item.formatted_address,
value: item.formatted_address,
latitude: item.geometry.location.lat(),
longitude: item.geometry.location.lng()
}
}));
})
},
//This bit is executed upon selection of an address
select: function(event, ui) {
alert(ui.country);
$("#spot_lat").val(ui.item.latitude);
$("#spot_lng").val(ui.item.longitude);
var location = new google.maps.LatLng(ui.item.latitude, ui.item.longitude);
marker.setPosition(location);
map.setCenter(location);
}
});
});
在這裏,我試圖在從自動完成列表中選擇項目時測試alert(ui.country)
。但是,我只是得到undefined
。它沒有通過。我做錯了什麼?
謝謝。
如果'不那麼'警報(ui.country)通過ui''會導致一個錯誤,而不是警告不確定。嘗試'console.log(ui)'而不是看看它給了什麼 – Esailija