插件窝 干货文章 JS限制input框只能输入0~100的正整数的两种方法

JS限制input框只能输入0~100的正整数的两种方法

strong class value 输入 708    来源:    2024-10-18

法一:(复杂)

<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)先用正则判断是否为正整数,如果不是,就用replace方法将非数字的字符替换为为空

(2)判断范围,大于100,就让输入的值直接为100,

(3)小于0,就让输入的值为null

注意:需要将input的type类型设置为number类型,是限制只能输入数字(包含浮点型和整型数据)

法二:(简单)

<input type="number" min='0' max='100' v-model='testNum'>

直接通过设置是三个属性,type、min、max即可,就可以设置0~100的整数

注意:如果想输入浮点型数据,就将min、max 后增加小数位数定义浮点类型数据的输入

<input type="number" min='0.00' max='100.00' v-model='testNum'>

补充:

还有一个属性step,input框可以通过键盘的上下键去增加或者减少input输入的数值,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的正整数的文章就介绍到这了,更多相关input框限制输入内容请搜索插件窝以前的文章或继续浏览下面的相关文章希望大家以后多多支持插件窝!