谷歌如何在自动填充示例中填写文本输入

时间:2015-12-27 18:55:54

标签: javascript html5 location geocode

在您输入示例https://developers.google.com/maps/documentation/javascript/examples/places-autocomplete-addressform

中的地址后,我一直在试图弄清楚google如何填写文本输入中的精确数据

我的javascript不是很好,但我可以理解它,但在代码中的任何地方都找不到它们将它应用到输入字段。

非常感谢任何帮助

1 个答案:

答案 0 :(得分:0)

我花了一段时间才意识到这一点

var componentForm = {
  street_number: 'short_name',
  route: 'long_name',
  locality: 'long_name',
  administrative_area_level_1: 'short_name',
  country: 'long_name',
  postal_code: 'short_name'
};
////////////////////////////////////////////////////////////////////////
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;
         }
     }
}

就是答案,它们循环遍历place.address_components的大小,然后将它与componentForm进行比较,然后将其添加到输入中。