我正在使用谷歌自动完成地方 javascript 为我的搜索框返回建议的结果,我需要的是只显示与输入的字符相关的城市和国家,但谷歌 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&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>
你可以试试国家限制
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 兼容的国家/地区代码。
如果我没有加载任何地图,您知道自动完成查询是否有任何使用限制吗?我知道加载地图有 25,000 次使用限制
现在是 2014 年 8 月。是否已经可以只显示国家和城市?例如,当我输入 Mil 时,结果是 Milan, Bergamo, Italy。我只需要意大利米兰。一个一个地添加所有国家不是一种选择。
是否可以指定多个国家?
@bart 显然这是不可能的。如果您想要该功能,请在此问题上加注星标。
如果我们使用 types: ['(cities)'] 那么它将不允许我们在此处按邮政编码进行搜索。