0
這是我得到運行下面的代碼錯誤:google.maps.places.Autocomplete通話模糊,導致「無法讀取屬性‘幾何’的未定義」
錯誤:遺漏的類型錯誤:無法讀取屬性的幾何「未定義
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?sensor=false&libraries=places"></script>
<script type="text/javascript">
var places = new google.maps.places.Autocomplete(document.getElementById('bodyOfWater'));
google.maps.event.addDomListener(window, 'load', function() {
\t //On select of the location
\t google.maps.event.addListener(places, 'place_changed', function() {
\t \t var place = places.getPlace();
\t \t alert(place.geometry.location.lat());
\t });
\t
\t // Trigger search on blur
\t /*=====================*/
\t /* PROBLEM IN FOLLOWING CODE*/
\t /*=====================*/
\t google.maps.event.addDomListener(document.getElementById('bodyOfWater'), 'blur', function() {
\t \t var place = places.getPlace();
\t \t alert(place.geometry.location.lat());;
\t });
});
</script>
第一部分正常工作,當我真正從谷歌選擇的地方,但是當我嘗試在模糊觸發同樣的動作,看起來像我不明白的地方回來。
所以沒有辦法觸發相同的事件?我需要這樣做,如果用戶只是在一個盒子裏輸入東西,並沒有選擇任何東西。 – Michael
不,請看這個例子:https://developers.google.com/maps/documentation/javascript/places。首先你發送一個請求,然後你添加一個回調。當Google地圖準備好請求時,它會觸發回調並給出結果。這是JavaScript的方式(就像Ajax做同樣的事情)。 –
沒問題。那麼當用戶進入皇宮但是沒有從列表中選擇一個時,我怎麼會觸發place_changed事件呢? – Michael