有没有办法让Google Map的自动填充功能将结果限制在一个州内?它似乎只能受到国家/地区的限制:https://developers.google.com/maps/documentation/javascript/reference#ComponentRestrictions。
如果没有办法使用Google的自动完成功能,是否有一个jQuery插件会为我执行此操作?我需要一个好的自动完成插件,希望能够返回整个地图API响应(或者至少是lat / lng vallues)。
答案 0 :(得分:2)
您可以选择在构建bounds
时设置Component Restrictions
而不是使用Autocomplete
。它在Autocomplete section of the Developer's Guide中描述,编码规范在AutocompleteOptions entry in the API Doc中定义。您也可以在创建Autocomplete
后通过调用autocomplete.setBounds(bounds)
更改边界。
bounds
无法保证将结果限制在范围内的结果,但将bounds
设置为覆盖州或城市的区域将非常接近实现您所描述的内容。< / p>
如果您需要更进一步,您还可以选择从Autocomplete
切换到使用地方资料库dev-guide,这也允许您定义rankBy
可选属性。如果您使用google.maps.places.RankBy.DISTANCE
来定义rankBy
,则可以增加对限制返回到特定地理区域的结果的控制权。这些是Google地图目前提供的最佳选择。