Javascript Google Place自动完成地址表单合并街道号码和路线字段

Javascript Google Place自动完成地址表单合并街道号码和路线字段,javascript,google-maps,Javascript,Google Maps,我正在使用GoogleJavaScriptAPI自动完成创建的web应用程序上设置地址验证系统。这个系统工作得很好。您开始键入地址,然后单击完整地址,字段就完成了。字段填写完毕后,它们将显示在中,每个地址的每个部分都有一个唯一的标识符 目前,建筑编号显示在地址的单独字段中(即建筑编号:101道路名称:测试大道)。我想更改此设置,以便将建筑编号和道路名称合并(即地址:101 Test Avenue) 下面是填充输入字段的代码 var componentForm = { street_n

我正在使用GoogleJavaScriptAPI自动完成创建的web应用程序上设置地址验证系统。这个系统工作得很好。您开始键入地址,然后单击完整地址,字段就完成了。字段填写完毕后,它们将显示在中,每个地址的每个部分都有一个唯一的标识符

目前,建筑编号显示在地址的单独字段中(即建筑编号:101道路名称:测试大道)。我想更改此设置,以便将建筑编号和道路名称合并(即地址:101 Test Avenue)

下面是填充输入字段的代码

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'
    };
街道编号指建筑编号,路线指道路名称

我已尝试按以下方式组合,但它输出“未定义”。请找个人帮忙

var componentForm = {
      street_number: 'short_name long_name',
      route: 'long_name',
      locality: 'long_name',
      administrative_area_level_1: 'short_name',
      country: 'long_name',
      postal_code: 'short_name'
};

一个选项是更改填写表单的代码,以捕获要合并的两段数据,然后将它们合并到表单中所需的字段中

结合街道编号和路线字段的代码片段:

//此示例使用自动完成功能显示地址表单
//谷歌的PlacesAPI帮助用户填写信息。
var placeSearch,自动完成;
变量组件形式={
街道编号:“短名称”,
路线:'long_name',
地点:'long_name',
行政区域级别1:“短名称”,
国家:'long_name',
邮政编码:“短名称”
};
函数initAutocomplete(){
//创建自动完成对象,将搜索限制为地理位置
//位置类型。
autocomplete=new google.maps.places.autocomplete(
/**@type{!HTMLInputElement}*/
(document.getElementById('autocomplete')){
类型:['geocode']
});
//当用户从下拉列表中选择地址时,填充该地址
//表单中的字段。
autocomplete.addListener('place\u changed',fillInAddress);
}
//[开始区域\填写表格]
函数fillInAddress(){
//从自动完成对象获取位置详细信息。
var place=autocomplete.getPlace();
for(componentForm中的var组件){
document.getElementById(组件).value='';
document.getElementById(组件).disabled=false;
}
//从place details中获取地址的每个组件
//并在表单上填写相应的字段。
var-fullAddress=[];
对于(变量i=0;i
#位置字段,
#控制{
位置:相对位置;
宽度:480px;
}
#自动完成{
位置:绝对位置;
顶部:0px;
左:0px;
宽度:99%;
}
.标签{
文本对齐:右对齐;
字体大小:粗体;
宽度:150px;
颜色:303030;
}
#地址{
边框:1px实心#000090;
背景色:#f0ff;
宽度:480px;
右侧填充:2px;
}
#地址:td{
字号:10pt;
}
.场{
宽度:99%;
}
斯莱姆菲尔德先生{
宽度:80px;
}
.威德菲尔德{
宽度:200px;
}
.双场{
宽度:400px;
}
#位置场{
高度:20px;
边缘底部:2px;
}

街道地址
完整街道地址
城市
陈述
邮政编码
国家

一个选项是更改填写表单的代码,以捕获要合并的两段数据,然后将它们合并到表单中所需的字段中

结合街道编号和路线字段的代码片段:

//此示例使用自动完成功能显示地址表单
//谷歌的PlacesAPI帮助用户填写信息。
var placeSearch,自动完成;
变量组件形式={
街道编号:“短名称”,
路线:'long_name',
地点:'long_name',
行政区域级别1:“短名称”,
国家:'long_name',
邮政编码:“短名称”
};
函数initAutocomplete(){
//创建自动完成对象,将搜索限制为地理位置
//位置类型。
autocomplete=new google.maps.places.autocomplete(
/**@type{!HTMLInputElement}*/
(document.getElementById('autocomplete')){
类型:['geocode']
});
//当用户从下拉列表中选择地址时,填充该地址
//表单中的字段。
autocomplete.addListener('place\u changed',fillInAddress);
}
//[开始区域\填写表格]
函数fillInAddress(){
//从自动完成对象获取位置详细信息。
var place=autocomplete.getPlace();