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

3,516 阅读1分钟
<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}出现两位数字 即两位小数点;

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