onChage無效的原因:
雖然表面上感覺是當內容發生變化時,就會觸發onchange事件,但是那只能在頁面上操作。而如果通過dom對象去修改它的value則什么事也不會發生。
onchange觸發原理:
一、當input捕獲到焦點后,系統儲存當前值
二、當input焦點離開后[鼠標與鍵盤的觸發均可],判斷當前值與之前存儲的值是否不等,如果為true則觸發onchange事件。
所以想解決這個無效可以模擬一種鼠標點擊的效果
onchange事件,在使用DOM操作后加入下面的語句,(假設select的id為ele)
document.getElementById("ele").value="小樣"; document.getElementById("ele").fireEvent('onchange');
或者
$("#ele").val("小樣"); $("#ele").trigger("change");