2012-09-04 101 views
0

我正在使用JQuery UI自动完成功能,我正面临一个问题。Jquery自动完成chnage事件错误

这是我的代码:

$("#Id").autocomplete({ 
     source: url, 
      change : function (event,ui){ 
    alert('changed');  
    } 
}); 

我想这种变化事件将触发任何时候键入用户在输入文本

什么这是不是这里的情况。

当我键入一些东西时,它不会触发,直到我在屏幕上的其他地方按下鼠标。

任何人都面临这种情况?知道如何处理这个?

谢谢,

约翰。

回答

0

我通过单独使用keypress事件解决了我的问题。而不是使用更改事件。

新代码:

$("#Id").autocomplete({ 
    source: url 
});  

$("#Id").keydown(function() { 
    // Logic goes here 
}); 

发生此问题,因为我们得到了两个重点事件被解雇了的onblur和一些按钮我的onclick事件。这导致行为不一致。

谢谢

0

试着直接将一个按键事件绑定到它?

$("#Id").autocomplete({ 
     source: url, 
      change : function (event,ui){ 
    alert('changed');  
    } 
});  

$("#Id").bind('keypress',function(){$(this).autocomplete.change}); 
+0

我测试了它,它不工作。 这是我的全部代码 $( “#ID”)自动完成({ \t \t自动对焦:真实, \t \t的minLength:0, \t \t来源:URL, \t \t选择:函数(事件, UI){ \t \t \t警报( '选择'); \t \t}, \t \t变化:功能(事件,UI){ \t \t \t alert('changed'); \t \t} \t}); ('#Id')。bind('keypress',function(){$(this).autocomplete.change}); –