2014-09-21 23 views
0

我有一個編輯框接受我的HTML頁面上的電子郵件地址。控制OnChange和OnKeyUp

目前,我有一個JavaScript調用'onkeyup',它驗證電子郵件地址是否正確。

而且用戶輸入時效果很好。

但是,如果我輸入我的地址(我們將使用[email protected]),我開始:

[email protected] 

我的自動完成功能提供我「[email protected]」,因爲我以前使用過它。

當我從自動完成下拉列表中選擇它時,'onkeyup'不會觸發。相反,'onchange'發生火災。

我需要兩個都開火。作爲suer類型,我想驗證(onkeyup),但我還需要激發javascript'onchange'。不過,我不認爲我應該解僱這兩件事。有一種方法可以同時處理一個事件嗎?

+0

是他們的任何理由把電子郵件驗證上的onkeyup,而不是? – ManirajSS 2014-09-21 04:44:27

+0

從來不知道這一點。 :)唯一擔心的是,在閱讀後,Internet Explorer 9及更早版本不支持「type =」email「。 – Craig 2014-09-22 02:20:33

回答

1

我只會禁用輸入的自動完成autocomplete="off"。瀏覽器對自動完成的反應不同,因此除非事先要測試瀏覽器,否則最好關閉自動完成功能。

2

你不是射擊事件 - 瀏覽器是。你只是在聽他們,並在他們發生時採取行動。

而不是在HTML具有兩個事件驅動功能,採用適當的聽衆在任一事件中做一個功能:

$('#myInput').on('keyup change', function() { 
    // do validation 
}); 
相關問題