【问题标题】:Can I add pattern attribute with input type as number?我可以添加输入类型为数字的模式属性吗?
【发布时间】:2015-08-30 05:54:05
【问题描述】:

这里我有一个HTML5 输入.....

<input type="number" pattern="\d{10}" data-pattern-msg="enter a value according to the pattern" />

但这并不能验证这种模式...... 这是什么原因??

【问题讨论】:

  • 这在类型为“文本”时有效。但我需要输入“数字”。有人可以解释当类型为“数字”时不工作的原因是什么??

标签: html validation input attr


【解决方案1】:

这里是 W3C HTML 检查器(验证器)的维护者。检查器为您的示例发出错误的原因是 HTML 规范不允许为 &lt;input type=number&gt; 元素指定 pattern 属性;请参阅the section on the HTML spec on &lt;input type=number&gt;Bookkeeping details 部分中的以下内容属性不得指定且不适用于元素列表

我不确定大多数浏览器是否支持使用placeholder&lt;input type=number&gt;

【讨论】:

    【解决方案2】:

    这是错误的type = "number" 更改为type="text" 并尝试

    <input type="text" pattern="\d{10}" data-pattern-msg="enter a value according to the pattern" title="only number" />
    

    定义和用法 pattern 属性指定一个正则表达式,用于检查元素的值。

    注意:模式属性适用于以下输入类型:文本、搜索、url、电话、电子邮件和密码。

    提示:使用全局标题属性来描述模式以帮助用户。

    【讨论】:

    • 是的,这是对模式的错误使用,但我相信 OP 有理由使用 type="number"
    猜你喜欢
    • 2010-10-07
    • 1970-01-01
    • 2013-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-17
    • 2014-10-14
    相关资源
    最近更新 更多