所以我今天正在使用自动完成功能,通常我没有问题,但今天我从列表中选择项目或只使用输入值时出现奇怪的情况。如果我从列表中选择项目,则事件将触发一次,如果我在then tab中键入项目到下一个字段,它似乎会触发select和change事件。无论我采取什么行动,我都希望事件能够触发一次。
我想我对此的另一个问题是,为什么会发生这种情况呢?
我已将代码放在下面。如果有任何问题请咨询!
码
$('#ee_id').autocomplete({
delay : 0,
source : "<?=APP_BASE?>/assets/server/autocomplete/geteeid.php",
select : function(event, ui){
event.preventDefault();
koolajax.callback(getEmployeeInformation(ui.item.value), getEmployeeInformationDone);
},
change : function(event, ui){
event.preventDefault();
var value = $(this).val();
koolajax.callback(getEmployeeInformation(value), getEmployeeInformationDone);
}
});
function getEmployeeInformationDone(response){
if(response.status){
$('#comcheckRequestForm').find('input, select, textarea').not($('#ee_id, #temp_agency, #purpose_code__id, #sender, #date')).prop('disabled', false);
$('#first_name').val(response.first_name);
$('#last_name').val(response.last_name);
$('#temp_agency').prop('disabled', true);
}else{
bootbox.alert({
message : response.error,
backdrop : false,
callback : function(){
$('#comcheckRequestForm').find('input, select, textarea').not($('#ee_id, #temp_agency, #purpose_code__id, #sender, #date')).prop('disabled', true);
$('#first_name').val('');
$('#last_name').val('');
$('#ee_id').focus();
}
});
}
}