当我们在新增修改数据的时候,经常需要使用到,比如输入手机号码只能输入13位的数字,折扣只能输入0——1直接的两位小数。这些都是限制输入,但是我们该如何使用呢?
这时候我们就要用到必不可少的正则表达式了。
下面我们就来说明一下方法
首先第一种方法
1.使用js和正则表达式判断,
要限制这个input框输入,首先我们就要获取到他的值,下面这句代码就是获取input的值
var ProductiveYear = KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲Year").val();
我…/;
上面的这句就是只能输入数字的正则表达式,下面我们只需要把这个正则表达式放入这个input进行判断即可,下面是代码
if (!year.test(ProductiveYear))
{
layer.alert("生产年份只能填写数字!", { icon: 0, title: '提示', skin:"layui-layer-molv" });
return;}
if里面判断的意思是当year这个input框里面的值不符合这个ProductiveYear正则判断,就弹出只能填写数字。
下面展示一下效果图
如果输入了非数字就会弹出该提示!
下面来说下第二种方法
2.在input里面加一个属性onkeyup 这个属性就是键盘弹起事件,在到里面获取value值,
在使用replace替换,使用方式是替换 replace(a,b) 将所有匹配到的a 替换为 b
下面就是代码
当我们在这个input框输入时,就会触发onkeyup属性,再触发replace属性,将会把不符那个正则表达式的字符替换为空,这样也就算限制了除数字的字符输输入。
这种方法还可以写在js当中
$( “#chukuan”).attr(“onkeyup”, “value=value.replace(/[^0-9.]/g,’’)”);
通过jQuery 选中需要修改的元素 通过 attr 事件修改该元素的onkeyup(键盘按键弹起事件)属性 通过正则匹配所有不属于0到9之间的编码,将它替换为空值 。
出款和入款的input都使用了限制输入,非数字输入,都会替换为空,就等于输入不进去了。