Javascript 如何阻止地址使用google places填充autocomplete
所以我在我的一个表单上有一个google maps自动完成,当它得到一个位置时,它会占据这个位置并对它进行格式化,这样所有正确的信息都会进入表单上的不同输入 我遇到的问题是在“place\u changed”事件触发自动完成填充输入之前。我想阻止最初的人口,而是用我想要的东西来填充 我试着做一个改变事件,但它似乎没有正确启动。这是我的密码: html:Javascript 如何阻止地址使用google places填充autocomplete,javascript,jquery,google-maps,autocomplete,google-places-api,Javascript,Jquery,Google Maps,Autocomplete,Google Places Api,所以我在我的一个表单上有一个google maps自动完成,当它得到一个位置时,它会占据这个位置并对它进行格式化,这样所有正确的信息都会进入表单上的不同输入 我遇到的问题是在“place\u changed”事件触发自动完成填充输入之前。我想阻止最初的人口,而是用我想要的东西来填充 我试着做一个改变事件,但它似乎没有正确启动。这是我的密码: html: 在设置值之前触发模糊事件: $('#id_address1').trigger('blur').val(address); 天啊。给你一百万杯
在设置值之前触发模糊事件:
$('#id_address1').trigger('blur').val(address);
天啊。给你一百万杯啤酒!工作起来很有魅力。
document.getElementById('id_address1'));
var autocomplete = new google.maps.places.Autocomplete(input);
google.maps.event.addDomListener(input, 'keydown', function(e) {
if (e.keyCode == 13) {
e.preventDefault();
console.log('enter');
}
});
google.maps.event.addDomListener(input, 'focusout', function(e) {
if ($('#id_address1').val() != $('#id_address1').attr('value')){
$('#id_address1').val($('#id_address1').attr('value'));
}
});off"
google.maps.event.addListener(autocomplete, 'place_changed', function() {
var place = autocomplete.getPlace();
if (place.address_components) {
var address = '';
for (var i = 0; i < place.address_components.length; i++){
switch (place.address_components[i].types[0]){
case 'street_number':
address = place.address_components[i].short_name;
break;
case 'route':
address += ' ' + place.address_components[i].short_name;
break;
case "locality":
$('#id_city').val(place.address_components[i].short_name);
break;
case "administrative_area_level_1":
$('#id_state').val(place.address_components[i].short_name);
break;
case "country":
$('#id_country').val(place.address_components[i].short_name);
break;
case "postal_code":
$('#id_zip_code').val(place.address_components[i].long_name);
break;
}
}
$('#id_address1').val(address);
$('#id_address1').attr('value', address);
}
$('#id_address1').trigger('blur').val(address);