如何用js正则限定input文本框只能输入数字和小数点,且只能输入小数点后两位?

<input type="text" onkeyup="!/^(\d+\.?)?\d{0,2}$/.test(this.value)?(this.value=this.value.substring(0, this.value.length-1)): ''"/>

//小数点后面三位数
$('#maintenanceClinic #dosePercent').val(num.replace(/([0-9]+\.[0-9]{3})[0-9]*/, "$1"));

//正整数并且第一位不能为0
<input class="refundNum"  type="text" oninput="this.value= this.value.replace(/[^0-9]/g,'') ? (this.value=='0'?'':this.value.replace(/[^0-9]/g,'')): ''"></input>

使用onkeyup按键抬起事件监听输入;
切记input的type不能为number,否则输入12.12.12会把input的值置为空;
/^(\d+.?)?\d{0,2}正则说明,.?出现一次.,(\d+.?)?出现一次数字加.(如:12.、13.、45、65);\d{0,2}出现两位数字 即两位小数点;

转载:https://juejin.cn/post/6844903717272027144

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值