谷歌地图自动完成完整地址

Google Maps autocomplete full address

本文关键字:地址 谷歌地图      更新时间:2023-09-26

>我有一个在输入字段中使用 Google 地图自动完成的 Web 应用程序,如示例页面所示:

  • https://developers.google.com/maps/documentation/javascript/examples/places-autocomplete-addressform

但是,他们使用自动完成功能来划分信息并填写表单:

function fillInAddress() {
  // Get the place details from the autocomplete object.
  var place = autocomplete.getPlace();
  for (var component in componentForm) {
    document.getElementById(component).value = '';
    document.getElementById(component).disabled = false;
  }
  // Get each component of the address from the place details
  // and fill the corresponding field on the form.
  for (var i = 0; i < place.address_components.length; i++) {
    var addressType = place.address_components[i].types[0];
    if (componentForm[addressType]) {
      var val = place.address_components[i][componentForm[addressType]];
      document.getElementById(addressType).value = val;
    }
  }
}

这不是我要找的。我需要的是一个简单的javascript变量,其中包含该输入字段的内容。类似的东西 var completeAddress = autocomplete.getFullAddress() ,但这不存在,如果没有复杂的循环和数组,我看不到一种方法可以做到这一点。

如何获取用户选择的文本?

你想要formatted_address

function fillInAddress() {
  // Get the place details from the autocomplete object.
  var place = autocomplete.getPlace();
  document.getElementById('fulladdress').value = place.formatted_address;
}
您也可以

这样做,因为在某些情况下,formatted_address不会提供完整的地址。

completeAddress = document.getElementById('autocomplete').value;

其中"自动完成"是用于搜索地点的输入字段的 ID