一尘不染

如何将Google自动填充结果限制为仅城市和国家/地区

javascript

我正在使用google autocomplete place
javascript返回搜索框的建议结果,我只需要显示与输入字符有关的城市和国家/地区,但google
api会提供很多我不需要的常规地方结果,所以限制结果只显示城市和国家。

我正在使用以下示例:

<html>
<head>
<style type="text/css">
   body {
         font-family: sans-serif;
         font-size: 14px;
   }
</style>

<title>Google Maps JavaScript API v3 Example: Places Autocomplete</title>
<script src="http://maps.googleapis.com/maps/api/js?sensor=false&amp;libraries=places" type="text/javascript"></script>
<script type="text/javascript">
   function initialize() {
      var input = document.getElementById('searchTextField');
      var autocomplete = new google.maps.places.Autocomplete(input);
   }
   google.maps.event.addDomListener(window, 'load', initialize);
</script>

</head>
<body>
   <div>
      <input id="searchTextField" type="text" size="50" placeholder="Enter a location" autocomplete="on">
   </div>
</body>
</html>

阅读 366

收藏
2020-05-01

共1个答案

一尘不染

您可以尝试国家/地区限制

function initialize() {

 var options = {
  types: ['(cities)'],
  componentRestrictions: {country: "us"}
 };

 var input = document.getElementById('searchTextField');
 var autocomplete = new google.maps.places.Autocomplete(input, options);
}

更多信息:

ISO 3166-1 alpha-2
可用于将结果限制为特定组。当前,您可以使用componentRestrictions按国家/地区进行过滤。

该国家/地区必须作为两个字符与ISO 3166-1 Alpha-2兼容的国家/地区代码传递。


官方指定的国家/地区代码

2020-05-01