jQuery自动完成和更改交互

时间:2014-12-05 10:03:44

标签: javascript jquery jquery-ui autocomplete

我无法让表单按要求运行 - 不确定编码或方法是否有错误。 我有一个使用jQuery自动完成设置的Name字段。选择选项后,还会填充ID字段。这可以。 我遇到的问题是我需要清除名称字段更改的ID字段ID,因为它将不再是正确的ID。我尝试使用jQuery的更改触发器,但它也会在自动完成后触发 - 或者至少在自动完成后名称字段失去焦点时 - 因此ID始终被删除。

$('#MgrName').autocomplete({
        source:'auto_name.php',
        delay: 100,
        minLength:3,
        select:function(evt, ui)
            {
            // when a name is selected populate fields
            this.form.MgrID.value = ui.item.empid;
            this.form.MgrName.value = ui.item.empname;
            }
        });
$('#MgrName').change(function(){
        alert( "Handler for .change() called." );
        $('#MgrID').val('');
        });

我想我可以将名称字段的内容存储在变量中,只有在字段不再与变量匹配时才清除ID。这是最好的方式,还是有一个我更缺的更优雅的解决方案?

1 个答案:

答案 0 :(得分:0)

我想你可以试试这个,

$(document).on("change", "#MgrName", function(){
   alert( "Handler for change called." );
        $('#MgrID').val('');
});

把这个放了,

$('#MgrName').change(function(){
        alert( "Handler for .change() called." );
        $('#MgrID').val('');
        });