首页 文章

Google商家信息自动填充功能 - 修改结果

提问于
浏览
3

我有一些标准的谷歌地方自动完成代码,工作正常 . 我想在用户从列表中选择地址时修改结果 .

例如,其中一个结果是

'45 Alexandra Road Holiday Flats,Alexandra Road,Southport,United Kingdom'

当用户从列表中选择它时,我希望在文本框中显示以下值

'45 Alexandra Road Holiday Flats,Alexandra Road,Southport,PR4 5JD'

即,我希望插入邮政编码和联合王国 .

我可以在place_changed事件中执行此操作,post / zip代码可用,我可以执行一些字符串操作并获得我想要的结果 .

但是,当我在'place_changed'函数末尾将其分配给txtBox时,会将其更改回原始选定值而不使用post / zip代码 . 这是最近因我的代码工作而发生变化的事情 . 将值赋值给txtBox发生在place_changed事件之后 .

var autoCompleteObject = new google.maps.places.Autocomplete(txtBox[0], GooglePlacesOptions);
// Autocomplete Listener
google.maps.event.addListener(autoCompleteObject, 'place_changed', function () {

    var place = autoCompleteObject.getPlace();

    txtBox.val('45 Alexandra Road Holiday Flats, Alexandra Road, Southport, PR4 5JD');

});

任何关于如何实现这一点的想法将不胜感激 .

非常感谢,

标记

2 回答

  • 0

    我决定不使用自动完成功能,而是使用PlacesService.textSearch() .

    非常简单,您可以更好地控制结果以及它们的显示方式等 .

    所以这个问题仍然存在,但我的头脑不那么疼:)

  • 0

    作为参考,我发现以下答案是有用的解决方法:show just the street address in google.maps.event.addListener()

相关问题