我在表单元素中有一个数字输入标签:
<form novalidate="">
<input type="number" data-role="none" autocapitalize="off" autocorrect="off" autocomplete="off" placeholder="Quantity" class="quantityInput" />
</form>
当用户输入任何
non-numeric
值,浏览器验证它并在提交调用之前删除整个文本。根据其他答案的建议,我尝试使用 novalidate 和
novalidate="novalidate"
表单上的属性。我也尝试点击invalid
事件。但似乎没有任何效果。如果是 non-numeric
,浏览器只会删除整个文本在进行提交调用之前。使用输入的原因
type="number"
是我需要一个数量字段,用户可以在其中输入类似 10 grams
的内容或 23 pcs
等等,所以通过设置输入 type="number"
, iOS 首先显示键盘的数字版本。如何禁用对数字输入类型的浏览器验证?
最佳答案
现代答案(截至 2020 年)是使用 inputmode
:
<input type="text" inputmode="email">
<input type="text" inputmode="tel">
关于javascript - 禁用输入类型=数字的输入验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26271767/