js限制輸入框只能輸入整數、小數


轉載:http://www.cnblogs.com/shangwd/p/4913732.html

做表單驗證的時候是否會碰到驗證某個輸入框內只能填寫數字呢,僅允許輸入整數數字或者帶小數點的數字。下面這段代碼也許能幫到你!通過對當前輸入框定義onkeypress,onkeyup,onblur事件對表單做了充分的驗證,結果還是非常靠譜的。

復制代碼 代碼如下:

type="text" value="" t_value="" o_value="" onkeypress="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" onkeyup="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" onblur="if(!this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?|\.\d*?)?$/))this.value=this.o_value;else{if(this.value.match(/^\.\d+$/))

this.value=0+this.value;if(this.value.match(/^\.$/))this.value=0;

this.o_value=this.value}"

下面對onkeypress,onkeyup,onblur事件做簡要的解釋。

onkeypress 事件會在鍵盤按鍵被按下並釋放一個鍵時發生。

onkeyup 事件會在鍵盤按鍵被松開時發生。

onblur 事件會在對象失去焦點時發生。

另外需要注意的是如果需要做嚴格驗證的表單,一定要客戶端和服務器端進行雙重驗證,以上緊緊做了客戶端驗證。如果稍微懂點程序的人,能夠很輕松的繞過這段驗證代碼,如果服務器端沒有進行驗證的話,就很容易出問題的。


免責聲明!

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



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