HTML input元素正则匹配异常:10位手机号验证失败求助
问题解决:Phone Number输入框验证失败
- 问题根源:你在
pattern属性里写了带斜杠/的正则字面量,这是错误写法。HTML的pattern属性只需要正则的模式字符串,不需要包裹JavaScript正则的斜杠。 - 失败原因:当你写
/^\d{10}$/时,浏览器会把首尾的/也当作必须匹配的字符,输入10位数字时因为没有这两个斜杠,就会触发格式不匹配提示。 - 修正方案:
把pattern的值改成^\d{10}$,或者更简化的\d{10}(HTML的pattern默认会自动给正则加上^和$,强制匹配整个输入内容)。
修正后的代码:
<input type="text" id="number" name="number" pattern="^\d{10}$" required>
或者简化版:
<input type="text" id="number" name="number" pattern="\d{10}" required>
内容的提问来源于stack exchange,提问作者Mary
相关产品推荐
相关产品推荐

