0

我有一个表单,该表单将电话号码作为字段中的输入,我已根据 HTML5 标准将类型设置为 tel。我需要输入来接受 8 位或 10 位值。

我试过了

<input type='tel' placeholder='0123456789 or 12345678'></input>

我也尝试添加 pattern="[0-9]{8} or [0-9]{10} ,但是没有用,还有其他方法吗

4

4 回答 4

3

这不是我推荐的电话号码模式,但这应该按照您的要求进行:

模式='[0-9]{8,10}'

<input type='tel' pattern='[0-9]{8}([0-9]{2})?' title='Phone Number (8 or 10 numbers)' />
于 2013-09-28T14:49:35.963 回答
1

首先,我建议您目前不要使用“tel”作为输入类型。原因是它尚未得到所有主要浏览器提供商的支持。它可能适用于 Google Chrome,但其他浏览器(例如 IE)尚不支持此输入类型。我个人坚持将类型保留为用于输入电话号码的文本。

其次,限制人员输入量的方法是使用 maxlength 属性。

<input type="text" maxlength="10"/>

最后,输入标签是自闭合的。它以以下格式使用:

<input />

不是:

<input></input>

希望这有帮助。更多信息,请看这里:http ://www.w3schools.com/tags/att_input_maxlength.asp

于 2013-09-28T14:30:53.420 回答
0

将您的输入标签更改为此;

<input type="text" min="8" max="10" />
于 2013-09-28T14:39:21.520 回答
0

亲们自己找到的

它是用模式属性本身来完成的

<input type='tel' placeholder='0123456789' pattern='[0-9]{8}|[0-9]{10}'>

这里'|' 是 or 的表达方式,不过谢谢各位。

pattern='[0-9]{8}|[0-9]{10}'

解决了我的问题

于 2013-09-28T15:05:09.310 回答