【问题标题】:Disable input validation for input type=number禁用输入类型=数字的输入验证
【发布时间】:2014-12-03 23:47:00
【问题描述】:

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

<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 grams23 pcs 等内容。因此通过设置输入type="number",iOS 会显示键盘的数字版本首先。

如何禁用对数字输入类型的浏览器验证?

【问题讨论】:

  • 如果您需要numericaltextual 值,则必须改用text 类型。 number 类型将只接受数值。(字面意思)
  • 能不能分享一下你的输入框代码,让大家明白哪里错了?
  • 完成。在问题中添加了我的输入框代码

标签: javascript jquery html forms validation


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-09-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-05
    相关资源
    最近更新 更多