【问题标题】:jQuery - How to get the address text when a Google Maps places autocomplete is validatedjQuery - 验证 Google 地图位置自动完成时如何获取地址文本
【发布时间】:2023-04-09 12:38:02
【问题描述】:

我想知道在 Google 地图地点自动完成功能通过验证后如何获取地址文本。例如,假设在填充文本输入时,自动完成列表显示并且在选择其中一项时(无论是通过按方向键以移动到想要的项目然后按 Enter 键,甚至只是通过鼠标单击它),所选地址将显示在控制台日志中。 下面是一个更好的例子:

在这里,我需要在地址“Paris France”被选中后进行控制台记录。

这是我的相关 HTML 代码:

<input type='text' id='nouvelleAdresse'>

这是我的相关 JavaScript 代码:

var options = {
                    componentRestrictions: {country: 'fr'}
                };
var autocomplete1 = new google.maps.places.Autocomplete(document.getElementById("nouvelleAdresse"), options);
autocomplete1.addListener('place_changed', fillInAddress);
                function fillInAddress() {
                    var place1 = autocomplete1.getPlace();
                }

其实我只要加上下面的代码就可以了:

$(document).on('change', '#nouvelleAdresse', function() {
                console.log('the address: '+$(this).val())
            });

但是,当不选择任何自动完成列表项时(甚至在文本输入之外单击时),这给了我相同的结果。 因此,再次,我的目标是在从自动完成列表中选择地址时记录地址。有什么想法吗?

【问题讨论】:

  • 什么是“Echap”键?
  • 也许只是在place_changed 事件触发时将值记录在#nouvelleAdresse 中?
  • 终于成功了!非常感谢您的提示!

标签: jquery google-maps validation autocomplete textinput


【解决方案1】:

我找到了!我刚刚更改了下面的代码块:

function fillInAddress() {
                var place1 = autocomplete1.getPlace();
            }

到这个:

function fillInAddress() {
                    var place1 = autocomplete1.getPlace();
                    console.log('the adress: '+$('#nouvelleAdresse').val())
                }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-07-03
    • 1970-01-01
    • 2019-06-09
    • 2019-04-07
    • 1970-01-01
    • 2015-04-25
    • 2013-04-25
    相关资源
    最近更新 更多