使用 Google 地方信息自动完成
时,我可以将搜索限制在城市街道吗?
最佳答案
您可以设置自动完成
选项以使用geocode
作为类型,这将限制返回到地址的结果:
var input = document.getElementById( 'searchTextField' );
var options = {
bounds: yourBounds,
types: ['geocode']
};
autocomplete = new google.maps.places.Autocomplete( input, options );
无法将结果限制在仅仅街道上,但这将在很大程度上实现您想要的效果。如果您正确设置yourBounds
(可能仅限于城市区域),它将使您尽可能接近当前的范围。
更新对评论的回复:
如果您想从输入城市开始,可以将 map 的边界绑定(bind)到自动完成
的边界,这样当在中选择城市时, map 就会自动设置其视口(viewport)。 >自动完成
:
var options = {
bounds: yourBounds,
types: ['(cities)']
};
autocomplete =
new google.maps.places.Autocomplete( input, options );
// This will bind the map's bounds to the Autocomplete's bounds:
autocomplete.bindTo('bounds', map);
然后,您可以更新自动完成
的类型,与上面类似,以使其返回地址:
autocomplete.setTypes( [ "geocode" ] );
从那里,您可以阅读 Places Library API Docs .
关于jquery - 有没有办法限制 Google 地点自动完成功能搜索城市的街道?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10653023/