JS限制input框只能輸入0~100的正整數(shù)的兩種方法
法一:(復雜)
<input type="number" oninput="if(!/^[0-9]+$/.test(value)) value=value.replace(/\D/g,'');if(value>100)value=100;if(value<0)value=null" v-model='testNum'>
核心判斷:
oninput="if(!/^[0-9]+$/.test(value)) value=value.replace(/\D/g,'');if(value>100)value=100;if(value<0)value=null"
判斷語句一共三個if
(1)先用正則判斷是否為正整數(shù),如果不是,就用replace方法將非數(shù)字的字符替換為為空
(2)判斷范圍,大于100,就讓輸入的值直接為100,
(3)小于0,就讓輸入的值為null
注意:需要將input的type類型設置為number類型,是限制只能輸入數(shù)字(包含浮點型和整型數(shù)據(jù))
法二:(簡單)
<input type="number" min='0' max='100' v-model='testNum'>
直接通過設置是三個屬性,type、min、max即可,就可以設置0~100的整數(shù)
注意:如果想輸入浮點型數(shù)據(jù),就將min、max 后增加小數(shù)位數(shù)定義浮點類型數(shù)據(jù)的輸入
<input type="number" min='0.00' max='100.00' v-model='testNum'>
補充:
還有一個屬性step,input框可以通過鍵盤的上下鍵去增加或者減少input輸入的數(shù)值,step設置為多少,那么增加或者減少的幅度就是多少。例如:
<input type="number" min='0.00' max='100.00' step='0.1' v-model='testNum'>
step='0.1' 那么通過鍵盤加減幅度就是0.1
法二有時候會失效,沒找到原因~
失效的話就用法一~
到此這篇關于JS限制input框只能輸入0~100的正整數(shù)的文章就介紹到這了,更多相關input框限制輸入內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
doctype后如何獲得body.clientHeight的方法
doctype后如何獲得body.clientHeight的方法...2007-07-07