HTML输入数字步长而不进行验证

8
在HTML中,你可以将step属性添加到数字类型的输入框中。我想要这个功能是因为它可以简化用户的输入,只需按上/下箭头即可。
我发现该属性的另一个特性是它会强制用户保持在指定的区间内。HTML通过验证实现了这一点。你可以手动输入任何值,但它不会让你提交表单。 我不想要这个功能! 为了解决这个问题,我发现有一个novalidate属性可以用于<form>标签中,这个属性效果很好。但不幸的是,浏览器支持较差。
我想我需要移除step属性,并使用JavaScript/jQuery自己编写功能,通过触发键盘按下事件来实现。

2
我认为我有同样的问题/疑问。这个代码对我没有起作用:<input type="number" name="futureDailyAdSpend" value="138.03" step="50" min="50" formnovalidate/>。我收到了这个错误信息:“请输入有效值。最接近的两个有效值分别为100和150。” 我想允许用户点击上下箭头以每次增加50的方式进行步进,但我也想允许用户输入更精确的数字。 - Ryan
1个回答

2

但是遗憾的是,浏览器的支持情况较差。

这并不是完全正确的。根据MDN的资料,IE从版本10开始支持novalidate属性,以及支持input[type=number]。这意味着如果浏览器支持数字输入,它很可能也支持novalidate属性。


根据w3schools的说法,它不支持Safari浏览器,但我刚刚测试了一下,在Safari中似乎根本没有对步骤进行验证,所以没问题。我会继续使用它的 :) 谢谢 - Cutaraca

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接