監聽input變化的事件


可以監聽input變化的事件

在需要監聽input輸入值改變的時候,可以通過原聲DOM對象的事件oninput/onchange/onkeyup/onkeypress/onkeydown 事件來監聽。

這幾種事件的觸發條件

事件名稱 觸發條件
onchange 事件會在域的內容改變時發生
oninput 事件在用戶輸入時觸發
onkeyup 事件會在鍵盤按鍵被松開時發生
onkeypress 在按下按鍵時觸發, 不能觸發所有按鍵(例如:ALT, CTRL, SHIFT, ESC)
onkeydown 會在用戶按下一個鍵盤按鍵時發生

這幾種事件的區別

onchange事件只在鍵盤或者鼠標操作改變對象屬性,且失去焦點時觸發,腳本觸發無效,而onkeydown/onkeypress/onkeyup在處理復制、粘貼、長按鍵 處理上會有問題。
onkeydown、onkeypress、onkeyup在復制文本的時候均無法感知。

oninput不用考慮是否失去焦點,不管js操作還是鍵盤鼠標手動操作,只要HTML元素屬性發生改變即可立即捕獲到。

結論

如果要時時的監聽input中值的變化,用oninput最合適

在react中,對input onChange跟原生DOM的oninput機制基本一樣,只要HTML元素屬性發生改變即可立即捕獲到.可以參考這篇文檔點擊進入


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM