2

我正在尝试将Google Geocode自动填充字段添加到我的表单中。Google GeoCode自动完成限制状态

我已经能够得到它来限制返回到国家(AU)的结果,但如果我可以限制结果到国家,它会更好。 (新南威尔士州/ NSW)

这是我目前initialize()功能:

function initialize() { 
var options = { 
types: ['geocode'], 
    componentRestrictions: {country:"AU"} 
}; 
    autocomplete = new google.maps.places.Autocomplete(
    (document.getElementById('autocomplete')),options); 
    google.maps.event.addListener(autocomplete, 'place_changed', function() { 
    fillInAddress(); 
    }); 
} 

我已经阅读文档,发现可以使用types参数限制的结果,但我一直无法找出确切的代码应该是什么。

只需将其更改为:

types: ['administrative_area1':'NSW'], // OR 'New South Wales' 

和各种组合类似上述(=代替:等)都没有奏效..

有人能指出我朝着正确的方向是什么实际的语法是为了我想达到的目的?

谢谢。

+2

当您阅读文档时,您也应该阅读以下内容:*目前,您可以使用componentRestrictions按国家/地区过滤* –

+0

我做过。并且我已经实现了这个部分并且说它是有效的。我所要求的是,我可以进一步过滤它,只显示特定状态(NSW)内的结果。 – Jake

+0

如果可以按状态进行过滤,他们会写*,您可以使用componentRestrictions按国家**进行过滤,并从API页面状态**。* –

回答

2

我使用自动完成而没有任何过滤器,但在发送查询之前自动将我感兴趣的状态追加到所有用户输入。

对于有人想要加利福尼亚州的结果,例如,如果他们要搜索Sacramento它会自动更正输入到Sacramento, California,这对我来说工作得很好。例如Sacramento, California, USA

+0

这是个好主意!谢谢。 – Jake