我在表单元素中有一个数字输入标记:
<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首先显示键盘的数字版本。
如何禁用数字输入类型的浏览器验证?
答案 0 :(得分:0)
现代的答案(截至2020年)是使用inputmode
:
<input type="text" inputmode="email">
<input type="text" inputmode="tel">