2014-12-05 65 views
0

我无法根据需要获取表单 - 不确定它是否是编码或方法中的错误。 我有一个使用jQuery的自动完成设置的名称字段。当选择一个选项时,ID字段也被填充。这可以。 我的问题是我需要清除ID字段ID名称字段的变化,因为它将不再是正确的ID。我尝试过使用jQuery的更改触发器,但它也会在自动完成后触发 - 或者至少在名称字段在自动完成后失去焦点时 - 所以ID始终被删除。jQuery自动完成和更改交互

$('#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如果字段变量不再匹配。这是最好的方式吗,还是我缺少更优雅的解决方案?

回答

0

我想你可以试试这个,

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

insted的这个,

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