【问题标题】:GMAP3 and Autocomplete: Restrict results?GMAP3 和自动完成:限制结果?
【发布时间】:2012-07-16 17:01:35
【问题描述】:
我正在使用gMap3's website 上的自动完成功能来创建自动完成搜索。我有它的工作,但是我想将自动完成结果限制在一个州(即密苏里州)。有没有办法做这样的事情?
【问题讨论】:
标签:
jquery
google-maps
autocomplete
jquery-autocomplete
jquery-gmap3
【解决方案1】:
您可以使用gMap的address对象的region参数。
address: {
address: address,
region: 'your region code'
}
这会给您带来更好的结果,但不会删除错误的结果。
我不确定它是否适用于美国各州,还是仅适用于整个国家。
我遇到了同样的问题。最后我使用了这个参数,并在我发送到谷歌 API 的每个请求中附加了一个自定义字符串。
在您的情况下,只需将“密苏里州”添加到自动完成中的文本,然后再发送到谷歌地理编码器 api。
类似:
$('#element').autocomplete({
source: function( request, response ) {
var requestTerm = 'Missouri US' + request.term;
$('#gmap').gmap3(
{action:'getAddress',
address: {
address: requestTerm,
region: 'your region code'
}
);
...
也许不是最优雅的解决方案,但效果很好。