【发布时间】:2014-12-16 01:34:37
【问题描述】:
我的新项目需要从谷歌地图获取地址信息,但我们的服务只提供堪培拉所有酒店的接送服务。 我的问题是我如何限制自动完成只选择堪培拉的酒店。
这是我的代码:
var defaultBounds = new google.maps.LatLngBounds(
new google.maps.LatLng(-35.3345571, 149.0334956, 15),
new google.maps.LatLng(-35.1910655, 149.1817188, 12));
var options = {
bounds: defaultBounds,
types: ['establishment'],
keyword:'hotel',
componentRestrictions: {
country: 'au'
}
};
var input = document.getElementById('dropoff_address2Fromgoogle');
var autocomplete = new google.maps.places.Autocomplete(input,options);
google.maps.event.addListener(autocomplete, 'place_changed', function () {
var place = autocomplete.getPlace();
document.getElementById('dropoff_address2Fromgoogle').value = place.name
+ ", " + place.formatted_address
+ ", " + place.address_components[5].short_name;
});
我在堪培拉使用bounds来限制区域,但搜索结果仍然会返回其他区域,并且类型过滤器只有建立似乎没有返回我期望的更多结果。
【问题讨论】:
-
没有将结果限制为城市的选项。使用边界只会更喜欢这些结果,但不会将结果限制在边界内。
标签: javascript google-maps google-maps-api-3