【发布时间】:2014-10-17 07:17:16
【问题描述】:
我正在使用 HTML5 标记验证表单,输入类型编号,并且我希望仅当用户在框中输入值时才对浮点值进行键验证。但是我无法获得正确的值,因为我设计了输入类型编号的表单并且输入了值“12”。我将获得值为“12”,如果我输入“12..”,我将获得值为空字符串(“”),实际上输入不应该允许输入“12..”。那么有什么方法可以对此进行按键验证吗?
【问题讨论】:
我正在使用 HTML5 标记验证表单,输入类型编号,并且我希望仅当用户在框中输入值时才对浮点值进行键验证。但是我无法获得正确的值,因为我设计了输入类型编号的表单并且输入了值“12”。我将获得值为“12”,如果我输入“12..”,我将获得值为空字符串(“”),实际上输入不应该允许输入“12..”。那么有什么方法可以对此进行按键验证吗?
【问题讨论】:
在 HTML5 中,数字类型有一个 step 值、max 和 min 属性,用于在提交时对其进行验证。步进按钮的实现也使用 setp 值(即,按步增加)。
Step 可以是浮点数:
<input type="number" step="0.01">
更多信息请阅读这篇博文:http://blog.isotoma.com/2012/03/html5-input-typenumber-and-decimalsfloats-in-chrome/
但是如果你想用 jQuery 来实现它,你必须自己实现它,通过捕获事件并根据你的规则检查输入的数据。
注意:正如@artm 评论的那样,除了 IE 8/9 和 Opera Mini,此 HTML5 功能在其他主要浏览器中都存在。
【讨论】: