我正在使用JQuery UI Autocomplete从调用者数据库中提取记录。这适用于数据库中的记录,但我想改进对新记录的处理。
例如,如果用户从建议中选择名称,我将在稍后的表单中使用返回ID。这很好用。如果在建议中找不到该值,我正在努力触发脚本,因为它当前是从select事件触发的,并且似乎没有这个函数的onblur事件,我认为这就是我所追求的。我是JQuery的新手,已经花了一天时间尝试对它进行排序。
到目前为止,代码是:
$("#contact_name").autocomplete({
source: "get-caller-names.php",
minLength: 2,
select: function(event, ui) {
$('#contact_id').val(ui.item.id);
$('#contact_name').val(ui.item.name);
$('#contact_email').val(ui.item.email);
$('#contact_phone').val(ui.item.phone);
$('#contact_addr').val(ui.item.address);
}
});
欢迎所有建议,谢谢。
答案 0 :(得分:1)
代码以防其他人有同样的问题...
// auto-suggest jqueryui
$("#contact_name").autocomplete({
source: "GetCallerNames.php",
minLength: 2,
select: function(event, ui) {
$('#contact_id').val(ui.item.id);
$('#contact_name').val(ui.item.name);
$('#contact_email').val(ui.item.email);
$('#contact_phone').val(ui.item.phone);
$('#contact_addr').val(ui.item.address);
},
change: function(event, ui) {
$.ajax({
type: 'GET',
url: 'GetCallerNames.php',
dataType: 'json',
data: {term:$(this).val()},
success: function(data) {
if (data!=null&&data!='') {
$('#contact_id').val(data[0].id);
$('#contact_email').val(data[0].email);
$('#contact_phone').val(data[0].phone);
$('#contact_addr').val(data[0].address);
}
}
});
}
});
答案 1 :(得分:0)
你能不能为改变添加新的处理程序,例如:
$( ".selector" ).autocomplete({
select: function(event, ui) { ... },
change: function(event, ui) { ... }
});