JavaScript-jQuery geocomplete street_address无法正常工作

今天,我一直在努力尝试从jQuery Geocomplete获取字段结果以显示street_address,但看起来插件未将其作为data-geo =“”呈现到我的表单字段或其他任何字段上!

在我的HTML上,贝娄(Bellow)上有我要填写街道名称的字段,还有另一个要输入号码的字段,我需要两者的结果都转到#BillingAddress.我相信某些JavaScript可以完成这项工作,但我不是专家.

<div class="item">
<input id="autocomplete" placeholder="Look up your address" type="text"></input>
</div>
<div class="item" style="display: none;">
<input class="cat_textbox" id="houseNo" data-geo="street_number" type="text" placeholder="House Number" maxlength="50"/>
</div>
<div class="item" style="display: none;">
<input class="cat_textbox" id="street" data-geo="route" type="text" placeholder="street" maxlength="50"/>
</div>
<div class="item">
<input class="cat_textbox" id="BillingAddress" data-geo="street_address" type="text" placeholder="Billing Address" maxlength="50" name="BillingAddress"/>
</div>

到目前为止,我已经尝试使用一些jquery将字段值传送到#BillingAddress输入,但是只有在其他输入被键击或按下,单击时,它才会复制,但是我希望它们保持隐藏状态以提高可见性并使表格的复杂性降低有些人,因此当选择地理结果时,他们会一起填充到此字段中.

$('#houseNo').on('propertychange change click keyup input paste',function(){
   $('#BillingAddress').val(this.value+' '+$('#street').val());
});

$('#street').on('propertychange change click keyup input paste', function(){
   $('#BillingAddress').val($('#houseNo').val()+' '+this.value);
});

非常感谢您的帮助,我认为这对其他一些人也是很好的查询.

HERE IS THE FIDDLE

解决方法:

fillDetails:函数(结果){
“结果”对象在“ address_components”中没有“ street_address”,它被设置为结果的单独属性-“名称”.
如果您只是输入搜索词并提交,则将返回“名称”.如果再次单击“查找”,则不会返回“名称”.

我在第338行上做了一个快速的“修复”来替换“ street_address”,添加了以下内容:

    street_addr: result.formatted_address.split(',')[0],

因此,第335-339行如下所示:

  // Add infos about the address and geometry.
  $.extend(data, {
    formatted_address: result.formatted_address,
    street_addr: result.formatted_address.split(',')[0],
    location_type: geometry.location_type || "PLACES",

并在第65行添加了“ street_addr”:

"formatted_address street_addr location_type bounds").split(" ");
上一篇:HTML用javascrip在浏览器上实现语音输入和语义理解功能(speex压缩)


下一篇:JavaScript小汇(7)—— 操作BOM对象