解決 html5 input type='number' 類型可以輸入e


當給 input 設置類型為 number 時,比如,我想限制,只能輸入 0-9 的正整數,正則表達式如下:

/^[0-9]?$/  // 匹配 0-9 的整數且只匹配 0 次或 1 次

用正則測試,小數點是無法通過的,且,因為 設置了類型為 number,也無法輸入字母,

但實際上,1. 類似這樣的不合規則的數字是可以通過驗證的,且,可以鍵入字母 e,因為 e 在不同范圍也有不同的意義,我們默認認為e也代表一個數字。

解決辦法如下:

<input type='number' onkeypress='return( /[\d]/.test(String.fromCharCode(event.keyCode) ) )' />

這樣,就不能輸入 e 或者 小數點了


免責聲明!

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



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