<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyAiv004_zrkpEL-v1u-LU6QYIkgv7yjT_M&language={{ Lang::getLocale() }}&libraries=places&" />
<script type="text/javascript">
google.maps.event.addDomListener(window, 'load', function () {
var options = {
types: ['(cities)']
};
var places = new google.maps.places.Autocomplete(document.getElementById('location'));
var inputLat = $("input[name*='lat']");
var inputLng = $("input[name*='lng']");
var inputPlaceId = $("input[name*='place_id']");
google.maps.event.addListener(places, 'place_changed', function () {
var place = places.getPlace();
var address = place.formatted_address;
var latitude = place.geometry.location.lat();
var longitude = place.geometry.location.lng();
var placeId = place.place_id;
inputLat.val(latitude);
inputLng.val(longitude);
inputPlaceId.val(placeId);
});
});
$('#location').keypress(function(e) {
if (e.which == 13) {
google.maps.event.trigger(autocomplete, 'place_changed');
return false;
}
});
</script>
我需要它才能显示城市,但不知何故我也得到了国家......我不想展示大陆和国家。请帮忙
答案 0 :(得分:0)
如果您检查自动填充documentation,则会在此处说明:
(cities)
类型集合指示Places服务返回 与locality或administrative_area3匹配的结果
就像你所做的那样,你需要城市作为类型参数。
您可以通过region参数帮助在Google API调用中指定国家/地区。只需检查tutorial如何执行此操作。
以下是示例请求:
= javascript_include_tag "http://maps.google.com/maps/api/js?v=3.13&sensor=false&libraries=places®ion=UK"
有关详细信息,请查看此相关的SO问题,它可能会让您了解如何解决此问题。