禁用输入类型为数字的输入验证

6

我在表单元素中有一个数字输入标签:

<form novalidate="">
      <input type="number" data-role="none" autocapitalize="off" autocorrect="off" autocomplete="off" placeholder="Quantity" class="quantityInput" />
</form>

当用户输入任何“非数字”值时,浏览器会进行验证并在提交调用之前删除整个文本。
从其他答案的建议中,我尝试在表单上使用novalidate和novalidate="novalidate"属性。我还尝试了触发无效事件。但是似乎没有什么作用。如果文本是“非数字”的话,浏览器在执行提交调用之前就会将整个文本删除。
使用input type="number"的原因是我需要一个数量字段,用户可以在其中输入类似“10克”或“23件”的内容。因此,通过设置input type="number",iOS首先显示数字版本的键盘。
如何禁用浏览器对数字类型输入的验证?

可能是禁用HTML5表单元素验证的重复问题。 - Abdul Jabbar
1
如果您想要同时使用“数字”和“文本”值,您将需要使用“文本”类型。而“数字”类型只会接受数字值。 - Xlander
1
你能分享一下你的输入框代码吗?这样大家就能明白出了什么问题了。 - Vinit Patel
已完成。在问题中添加了我的输入框代码。 - Nishanth
1个回答

1

现代的答案(截至2020年)是使用inputmode

    <input type="text" inputmode="email">
    <input type="text" inputmode="tel">

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