【发布时间】:2014-06-29 09:12:39
【问题描述】:
如何重现问题:
在这个页面上 https://developers.google.com/maps/documentation/javascript/examples/places-autocomplete-addressform
选择一些地址,例如20 Water Street, New York City, NY, United States,(正如预期的那样,这些字段正在填充信息)。现在,例如在地址更改 20 到 10 中,而不是从建议的列表中选择地址,只需单击页面上的某个位置。建议列表消失,新地址10 Water Street, New York City, NY, United States 保留在输入字段中,但字段信息未更新。
我正在使用它来获取纬度和经度。所以,如果用户不是点击地址,而是点击外面,看起来,他改变了地址,但实际上我仍然会有之前地址的 Lat 和 Lng。
这里是初始化函数
var autocomplete;
function initialize() {
autocomplete = new google.maps.places.Autocomplete(
/** @type {HTMLInputElement} */
(document.getElementById('addressAutocomplete')), {
types : [ 'geocode' ]
});
google.maps.event.addListener(autocomplete, 'place_changed', function() {
var place = autocomplete.getPlace();
console.log(place);
});
}
我在想这样的东西可以工作,但它没有,这条线console.log(place);输出未定义
$(document).ready(function() {
$(document).on('focusout', '#addressAutocomplete', function() {
google.maps.event.trigger(autocomplete, 'place_changed', {});
});
});
谢谢
【问题讨论】:
-
所以您想在输入字段失去焦点时自动选择第一个建议?
-
@Dr.Molle 就我的尝试而言,看起来是的,但我不确定这是否适用于所有情况。谢谢
-
得到
var place = autocomplete.getPlace();的回复检查这个jsfiddle.net/BBzk6 .. -
这有什么更新吗?我也面临同样的问题。
-
@AlexandreBourlier,很遗憾没有...
标签: javascript jquery google-maps google-maps-api-3