Autocomplete()
当用户退出输入字段时,该函数会引发一个事件。您可以使用该事件来填充一组隐藏字段,其中包含自动完成提供的值。如果没有从下拉列表中进行有效选择,这些值将保持空白,因此您可以根据这些字段是否包含数据来制定程序逻辑。自动完成在不同字段中提供的值示例:街道、城市、州、国家/地区、LatLng 坐标。
为此,请在您的initialize()
函数中添加类似于以下内容的代码:
function initialize() {
/* existing lines of code */
var autocomplete = new google.maps.places.Autocomplete(input);
/* When user selects an address from the dropdown,
populate the address fields in the form */
google.maps.event.addListener(autocomplete, 'place_changed', function() {
fillInAddress();
});
}
接下来,创建您的fillInAddress()
函数,如下所示。请参阅此参考链接,以获取有关如何使用它的完整详细信息。
function fillInAddress() {
/* Get the place details from the Autocomplete object. */
/* The Autocomplete.getPlace() call retrieves a PlaceResult object */
var place = autocomplete.getPlace();
/* Use data from place.address_components[] according to your needs */
/* For reference, use the link: */
/* https://developers.google.com/maps/documentation/javascript/places#place_details_results */
}