HTML5表单模式仅适用于7或10个数字

时间:2016-09-19 05:47:49

标签: html5

我需要一个学生证的模式,该模式必须是7或10位数。

pattern="[0-9]{7,10}"

我得到了这个,但显然这是7-10而不是7 | 10

我尝试了pattern="[0-9]{7|10}",但也无效。

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

请改用[0-9]{7}([0-9]{3})?。这将设置7位数字的基数和一个可选的额外3位数字,将计数值提高到10。

答案 1 :(得分:2)

您可以使用^(\d{7}|\d{10})$"来准确获取7位或10位数字。


示例代码段

document.getElementById('textbox').onkeyup = function (){
  document.getElementById('count').innerHTML = this.value.length;
};
<p>
  <span>Character Count</span>
  <span id="count"></span>
</p>

<form>
  <input id="textbox" type="text" pattern="^(\d{7}|\d{10})$" required />
</form>

<p>Press Enter to check validation</p>