js 強制事件觸發

今天網站上select上有個onchange事件,我將option的attr設置成selected並沒有讓這一事件觸發,網上尋找到方法

var event = document.createEvent('HTMLEvents');
event.initEvent("change", true, true);
document.querySelector(".ui-datepicker-year").dispatchEvent(event);

這樣做就會強制觸發select上的事件

下面是對代碼的方法介紹
首先通過document.createEvent(eventType)創建一個前端事件
eventType可選值
參數 事件接口 初始化方法
HTMLEvents HTMLEvent initEvent()
MouseEvents MouseEvent initMouseEvent()
UIEvents UIEvent initUIEvent()

event方法

初始化方法使用
event.initEvent(eventType,canBubble,cancelable)
eventType: 字符串值。事件的類型。
canBubble: 事件是否起泡。
cancelable: 是否可以用 preventDefault() 方法取消事件。

event.preventDefault()
取消事件的默認動作。

dispatchEvent(evt)
給節點分派一個合成事件。evt:必需。要分派的 Event 對象。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章