6

我目前开始使用 Google Maps v3 API,我想知道是否可以使用自动完成功能来仅自动完成街道地址名称?

我目前正在使用此代码:

$(document).ready(function(){
    var options = {
      types: ['(cities)'],
      componentRestrictions: {country: "ar" }
     };

 var input = document.getElementById('laboral_calle');

 var autocomplete = new google.maps.places.Autocomplete(input, options);

});

但目前不工作。

我需要设置一个固定的州和一个固定的城市,以便在文本字段中只显示街道名称建议。

可能吗?

4

1 回答 1

1

我不确定我是否完全理解您的要求 - 您是说您只想匹配特定城市/州内的街道地址吗?

如果是这样,您可以在自动完成选项中设置 LatLngBounds 以将所有结果偏向于您的边界所包含的区域内。它不会完全过滤除此之外的任何内容,但对于给定的搜索,如果您的范围内有与之匹配的内容,它将出现在其他任何内容之上。请注意,如果您将 type 设置为 '(cities)',它只会匹配 'cities',并且您不会看到任何街道地址!

在这里,我定义了一个包含伦敦的 LatLngBounds,然后将自动完成限制为仅匹配街道地址。

var londonBounds = new google.maps.LatLngBounds(new google.maps.LatLng(51.332757,-0.475159),new google.maps.LatLng(51.680219,0.191574));

var autocompleteOptions = {
    bounds: londonBounds,
    types:['geocode'],
};
于 2012-09-04T16:36:50.517 回答