2012-09-04 128 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}); –