未经验证的 HTML 输入数字步骤
Posted
技术标签:
【中文标题】未经验证的 HTML 输入数字步骤【英文标题】:HTML input number step without validation 【发布时间】:2017-05-22 05:39:20 【问题描述】:在 html 中,您可以将 step
属性添加到数字类型的输入。我想要这个是因为我喜欢它可以简化用户的输入,只需按下向上/向下键。
我发现这个属性的另一个特点是,它迫使用户停留在那个区间。 HTML 通过验证来做到这一点。您可以手动输入任何值,但它不会让您提交表单。 我不要这个!
为了解决这个问题,我发现novalidate
标记中使用了novalidate
属性,效果很好。但遗憾的是,浏览器支持很差。
我想我需要删除 step
属性并通过触发其上的 keydown 事件来使用 javascript/jQuery 自己编写功能。
【问题讨论】:
我想我有同样的问题/问题。这对我不起作用:<input type="number" name="futureDailyAdSpend" value="138.03" step="50" min="50" formnovalidate/>
。我收到此错误:“请输入一个有效值。两个最接近的有效值是 100 和 150。”我希望允许用户单击向上/向下箭头以 50 为增量步进,但我也希望允许用户输入更精确的数字。
【参考方案1】:
但遗憾的是,浏览器支持很差。
那不是真的。根据 MDN,IE 从版本 10 开始支持 novalidate
属性,从版本 10 开始支持 input[type=number]
。这意味着如果浏览器支持数字输入,它很可能也支持 novalidate
属性。
【讨论】:
根据 w3schools 的说法,它确实不支持 safari,但我只是对其进行了测试,似乎根本没有对 safari 中的步骤进行验证,所以没关系。我会去的:)谢谢你以上是关于未经验证的 HTML 输入数字步骤的主要内容,如果未能解决你的问题,请参考以下文章