3
var lat = 0.0;
var lng = 0.0;
var jsonData = null;
var geocoder = new google.maps.Geocoder();
var miles = $('#milesAway').val();
// find what the user is locating by
if ($('#zipCode').is(':visible'))
{
var zipText = $('#zipCode').val();
if (isValidUSZip(zipText))
{
geocoder.geocode({
'address': zipText
}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
lat = results[0].geometry.location.lat();
lng = results[0].geometry.location.lng();
map.setCenter(results[0].geometry.location);
} else {
alert("Zip Code couldn't be located.");
}
});
}
else
{
alert('Please enter a valid US zip code.');
}
}
經過這件事情之後,lat和lng仍設置爲0.0,爲什麼?我不應該能夠像這樣設置它們嗎?在javascript中設置外部範圍變量from內部範圍
編輯:我到了他們應該設置的位置,如果我在那裏發出警告,我可以看到他們應該設置的值。
我看到它的運行並執行其他代碼,而不先運行geocode成功方法。疑難雜症。謝謝 – Scott 2011-04-07 21:14:46
@Scott你可以請小提琴的解決方案嗎? – Dhaval 2013-03-20 07:29:40
@Dhaval - 這個問題是2歲。 StackOverflow是一種資源,不是人們讓他人爲他們工作的地方。 – 2013-03-20 21:05:30