$(document).delegate("input#search-champions", "change", function(e)
每當我更改search-champions
中的值時,我必須單擊文本框以外的值才能使其正常工作。我希望函數在文本框內的值發生變化時運行。當文本框內的文本發生變化時,會調用什麼事件?
我忘記了它的名稱,但它是Google用於搜索的系統。你寫了,它會告訴你有A.結果
$(document).delegate("input#search-champions", "change", function(e)
每當我更改search-champions
中的值時,我必須單擊文本框以外的值才能使其正常工作。我希望函數在文本框內的值發生變化時運行。當文本框內的文本發生變化時,會調用什麼事件?
我忘記了它的名稱,但它是Google用於搜索的系統。你寫了,它會告訴你有A.結果
儘量結合keyup
事件,而不是:
$(document).delegate("#search-champions", 'keyup', function(e)
順便問一下,應該沒有必要與input
預先考慮您的選擇 - 標識無論如何都應該是唯一的!
非常感謝,這解決了我的問題 – 2013-02-08 17:00:18
沒問題。可能想接受答案:) – BenM 2013-02-08 17:02:14
更改事件不適用於文本框。相反,改變你可以使用鍵或按鍵事件。 你想要什麼,我們稱之爲自動完成。要做到這一點 所以最好的辦法是在keyup事件
$(document).delegate("input#search-champions", "keyup", function(e){
var elm=$(this);
var str=elm.val();
//now you can get word starting from a either from some array or server call or ajax.
});
如果您正在使用jQuery UI的。它具有自動完成功能。
http://jqueryui.com/autocomplete/
的$(document).delegate( 「輸入#搜索冠軍」, 「改變」,功能(E)
'change'對'input'元素有效,但只有當它們模糊時。 – BenM 2013-02-08 17:02:33
'keyup' ||'keypress'。 – BenM 2013-02-08 16:47:21
是'$(」 #search-champions「)。change(function(){...});'not working? – 2013-02-08 16:52:59
'change'只在該領域失去焦點時纔會被觸發 – BenM 2013-02-08 16:59:48