Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php JQueryUI自动完成-触发所有事件_Php_Jquery Ui_Autocomplete - Fatal编程技术网

Php JQueryUI自动完成-触发所有事件

Php JQueryUI自动完成-触发所有事件,php,jquery-ui,autocomplete,Php,Jquery Ui,Autocomplete,我正在使用jQueryUIAutoComplete从调用方数据库中提取记录。这适用于数据库中的记录,但我希望改进对新记录的处理 例如,如果用户从建议中选择一个名称,我将在表单的后面使用返回id。这个很好用。如果在建议中找不到该值,则我正在努力触发脚本,因为它当前是从一个select事件触发的,并且该函数似乎没有onblur事件,我认为这正是我想要的。我是JQuery新手,已经花了一天时间尝试对其进行排序 迄今为止的代码是: $("#contact_name").autocomplete({

我正在使用jQueryUIAutoComplete从调用方数据库中提取记录。这适用于数据库中的记录,但我希望改进对新记录的处理

例如,如果用户从建议中选择一个名称,我将在表单的后面使用返回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);
                }              
        });

欢迎所有建议,谢谢。

您不能为更改添加新的处理程序,例如:

$( ".selector" ).autocomplete({
    select: function(event, ui) { ... },
    change: function(event, ui) { ... }
});

代码,以防其他人有相同的问题

// 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);
            }
        }
        });
    }

    });

谢谢Matthew-我刚刚让它作为两个独立的函数工作,但这种方式更整洁。