一般來說,使用HTML屬性JavaScript事件是不好的做法。由於您無論如何都使用jQuery,因此您應該在外部腳本中執行類似操作:
$('#company').on('change keyup input', function() { getproduct(this); });
我現在將其分解。
$('#company')
選擇ID爲「company」的元素。這可以讓你通過改變它或附加事件監聽器來處理那個帶有javascript的對象。
.on(...)
將事件偵聽器附加到所選對象。它可以以幾種不同的方式使用,但是最基本的方式(這是我們在這裏使用它的方式),它有兩個參數,第一個是空格分隔的事件列表,用於監聽,第二個是回調函數當這些事件發生在所選元素上時執行。
change
是一個事件,當輸入元素改變了它的值然後失去焦點時被觸發。如果用戶沒有通過鍵入來更改輸入(可能通過上下文菜單進行粘貼),這可能是一個有用的事件。
keyup
是當按鍵然後釋放時觸發的事件。另請參閱和keypress
。
input
是一個很酷的新的HTML5事件,用於監聽用戶在元素上的輸入。這是非常重要的,因爲它是專門爲您正在嘗試完成的。 (值得注意的是,當在數字輸入類型上單擊微調箭頭按鈕時,觸發輸入事件。)如果用戶瀏覽器不支持輸入事件,您仍然希望將其他事件用作後備事件。
看到http://stackoverflow.com/questions/13601483/fire-onchange-event-after-autocomplete/正確答案20107284#20107284 – maxweber 2013-11-20 21:21:44