【发布时间】:2014-12-06 14:41:12
【问题描述】:
当用户更改位置字段中的输入时,我需要清除位置禁用输入。
这是我的代码:http://jsfiddle.net/spadez/6v3kbLbk/7/
var placeSearch, autocomplete;
var componentForm = {
route: 'long_name',
locality: 'long_name',
administrative_area_level_1: 'long_name',
country: 'long_name',
postal_code: 'short_name'
};
function initialize() {
autocomplete = new google.maps.places.Autocomplete(
(document.getElementById('autocomplete')), {
types: ['geocode']
});
google.maps.event.addListener(autocomplete, 'place_changed', function () {
fillInAddress();
});
}
function fillInAddress() {
var place = autocomplete.getPlace();
for (var component in componentForm) {
document.getElementById(component).value = '';
document.getElementById(component).disabled = false;
}
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;
}
}
}
使用 google autosuggest 我可以使用返回的信息填充字段。但是,当发生以下情况时,我遇到了问题:
用户键入地址的一部分 点击自动完成(填写字段) 用户删除或修改当前输入 用户输入新的输入,但没有点击自动完成
这会在自动完成字段中留下旧值。我需要的是检查字段中的内容是否发生了变化,如果有,删除带有红色边框的字段中的内容。
谁能告诉我这是怎么做的?我的猜测是这样的:
$('#autocomplete').keyup('input', function() {
$(".disabledclass").val('');
【问题讨论】:
标签: javascript jquery html autocomplete