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

本文介绍了一种使用正则表达式限制输入框内数字的小数点后位数不超过两位的方法。通过onkeyup事件监听输入,并采用特定的正则表达式进行匹配,确保输入的有效性。特别注意,input的type属性不能设置为number,以避免特殊输入导致的清空问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<input type="text" onkeyup="!/^(\d+\.?)?\d{0,2}$/.test(this.value)?(this.value=this.value.substring(0, this.value.length-1)): ''"/>
复制代码
  • 使用onkeyup按键抬起事件监听输入;
  • 切记input的type不能为number,否则输入12.12.12会把input的值置为空;
  • /^(\d+.?)?\d{0,2}正则说明,.?出现一次.,(\d+.?)?出现一次数字加.(如:12.、13.、45、65);\d{0,2}出现两位数字 即两位小数点;

亲测有效,不喜勿喷,见谅!

转载于:https://juejin.im/post/5bf3b1255188252f170e00b6

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值