gpt4 book ai didi

jquery - Google 地理编码自动完成限制状态

转载 作者:行者123 更新时间:2023-12-01 00:06:10 26 4
gpt4 key购买 nike

我正在尝试将 Google 地理编码自动完成字段添加到我的表单中。

我已经能够限制将结果返回到国家/地区(AU),但如果我也可以将结果限制在国家/地区,那就更好了。 (新南威尔士州/新南威尔士州)

这是我当前的initialize()函数:

function initialize() {
var options = {
types: ['geocode'],
componentRestrictions: {country:"AU"}
};
autocomplete = new google.maps.places.Autocomplete(
(document.getElementById('autocomplete')),options);
google.maps.event.addListener(autocomplete, 'place_changed', function() {
fillInAddress();
});
}

我已阅读文档,发现可以使用 types 参数来限制结果,但我一直无法计算出确切的代码应该是什么。

只需将其更改为:

types: ['administrative_area1':'NSW'], // OR 'New South Wales'

以及与上面类似的各种组合(=而不是:等)都不起作用..

有人能指出我想要实现的实际语法的正确方向吗?

谢谢。

最佳答案

在您的应用中保留州纬度/经度边界的列表,并使用它们限制自动完成。

    var stateBounds={
ca: ["32.812736", "-119.216815", "34.608128", "-117.039301"]
// lat/long boundaries list for states/provinces.
};

function getStateBounds(state) {
return new google.maps.LatLngBounds(
new google.maps.LatLng(stateBounds[state][0],
stateBounds[state][1]),
new google.maps.LatLng(stateBounds[state][2],
stateBounds[state][3])
);
}

new google.maps.places.Autocomplete(document.getElementById('search'), {
types: ['address'],
componentRestrictions: {country: 'us'},
bounds: getStateBounds('ca') // get LatLngBounds for ca.
});

关于jquery - Google 地理编码自动完成限制状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21871190/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com