我找不到正确的正则表达式模式,即使有很多这类问题。
我不希望用户能够键入或输入
<td><input type="number" pattern=" 0+\.[0-9]*[1-9][0-9]*$" name="itemConsumption" /></td>
- -1.0(负值)
- 字符串值和任何字符
- 1.0(十进制值)
- 没有范围限制
我只想接受正整数
解决了不需要正则表达式,我不知道这个:D
<td><input type="number" pattern=" 0+\.[0-9]*[1-9][0-9]*$" name="itemConsumption" onkeypress="return event.charCode >= 48 && event.charCode <= 57"</td>
原文由 SCS 发布,翻译遵循 CC BY-SA 4.0 许可协议
要禁止除数字以外的任何输入,您可以使用
在这里,
event.charCode == 8 || event.charCode == 0 || event.charCode == 13
条件处理按下 DELETE、BACKSPACE 或 ENTER 键时的情况(对于 Firefox 很重要,请参阅下面的 Mohit 评论 和 datashaman 与启用 ENTER 键相关的评论)。event.charCode >= 48 && event.charCode <= 57
意味着只返回 0(十进制代码 48)和所有其他最多 9(十进制代码 57)的数字。