【问题标题】:Google Places Autocomplete - modifying resultsGoogle 地方信息自动填充 - 修改结果
【发布时间】:2012-11-20 17:37:51
【问题描述】:

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

例如其中一个结果是

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

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

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

即,我想插入邮政编码并删除英国。

我可以在 place_changed 事件中执行此操作,邮政编码/邮政编码可用,我可以进行一些字符串操作并获得我想要的结果。

但是,当我将其分配给“place_changed”函数末尾的 txtBox 时,某些东西会在没有邮政/邮政编码的情况下将其更改回原始选定值。这是最近发生的变化,因为我的代码过去可以工作。将值分配/绑定到 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');

});

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

非常感谢,

标记

【问题讨论】:

    标签: javascript jquery google-maps-api-3 autocomplete


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

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

      非常简单,您可以更好地控制结果及其显示方式等。

      所以问题仍然存在,但我的头不那么痛了:)

      【讨论】:

        猜你喜欢
        • 2015-09-17
        • 2012-04-27
        • 2014-03-28
        • 2015-06-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-07-13
        • 2016-11-30
        相关资源
        最近更新 更多