如何将Google地址查找服务限制为特定邮政编码或城市/城镇中的街道名称。它目前给我在英国的所有地址,但我想限制它只在伯明翰,英国(B邮政编码)的地址。
代码到目前为止
JS
$(document).ready(function () {
addressLookup();
});
function addressLookup() {
var options = {
componentRestrictions: {
country: 'uk'
}
};
var address = document.getElementsByClassName('form-control booking address');
for(var i=0; i< address.length; i++){
new google.maps.places.Autocomplete(address[i], options);
}
//new google.maps.places.Autocomplete(address, options);
}
<input type="text" class="form-control booking address" id="pickup" placeholder="From">
<input type="text" class="form-control booking address" id="destination" placeholder="To">
小提琴在这里
发布于 2015-02-25 17:07:52
例如,如果伯明翰邮政编码的定义以B开头,并且假设您正在循环的address
数组中的每个值都是邮政编码(是吗?):
function isBirmingham(postcode) {
return postcode.substr(0, 1) === 'B';
}
function addressLookup() {
var options = {
componentRestrictions: {
country: 'uk'
}
};
var address = document.getElementsByClassName('form-control booking address');
for (var i = 0; i < address.length; i++) {
if (isBirmingham(address[i])) {
new google.maps.places.Autocomplete(address[i], options);
}
}
}
更新:
如何在自动完成选项中设置componentRestrictions
?参见https://developers.google.com/maps/documentation/javascript/reference#AutocompleteOptions -文档中只提到您可以指定一个国家。然而,这篇文章演示了使用邮政编码。
https://stackoverflow.com/questions/28722868
复制相似问题