我想有一个输入字段,只允许键入整数或.5十进制数字。例如0、0.5、1、1.5、2、2.5.......etc等
我正在尝试使用HTML5输入字段来实现这一点
<input type="number" min="0" max="18" step="0.5" pattern="\d+" />
但是当它在0.5的半个步长时,它不会验证这个数字。当单击外部/验证时,它只会保持红色。
这个是可能的吗?我找不到类似的例子来验证半个步骤。我需要使用jQuery来实现吗?
谢谢
发布于 2014-03-06 23:17:02
删除pattern
属性。这用于需要正则表达式的复杂验证(而您的正则表达式仅匹配数字序列)。实际上,规定的min
、max
和step
已经定义了您需要的所有验证:
<input type="number" min="0" max="18" step="0.5" />
发布于 2018-08-01 08:47:39
您可以尝试执行此操作:如果步骤不为.5,则会清除文本框
<input type="number" min="0" oninput="validity.valid||(value='');" step="0.5" />
https://stackoverflow.com/questions/22228321
复制相似问题