2017-10-08 89 views
-1

Html有許多事件類型。我試圖模擬用JavaScript代碼登錄.hta。我嘗試了文本輸入元素上以下內容:我好像點擊按鈕,而無需輸入用戶名如何在html表單輸入元素上模擬事件(焦點和模糊除外)?

user.focus(); 
user.value = 'JohnDoe'; 
user.blur(); 
button.click(); 

然而,頁面響應。我懷疑當我使用腳本執行此操作時,事件處理程序在未被觸發的元素上註冊。我做什麼來確定失敗的原因並對其進行修改?如何模擬元素上的其他事件類型?

回答

0

我找到了答案在這裏:How to trigger event in JavaScript?

這裏的食譜:

function fireevent(type, ele) 
{ 
    var event = win.document.createEvent("HTMLEvents"); 
    event.initEvent(type, true, true); 
    ele.dispatchEvent(event); 
} 

如果取勝是有問題的窗口。 fireevent('change',用戶)觸發文本輸入元素用戶的更改事件,這就是我需要做的事情。現在它的工作原理:)

請注意,儘管createEvent現在已被棄用。在IE10上,我使用的是.hta,它工作得很好。