非常简单的问题......如何在html5中验证这样的模式...
(562)810-5566或(714)433-4434
注意它将包含括号和空格。
我当前的输入控件如下所示。
$checkInQs = explode("?", trim($_POST['checkInQs'], "?"));
$checkInSql = "INSERT INTO CheckListQs (ID, GeofenceID, type, question) VALUES ";
$checkInInsertQuery = array();
$checkInInsertData = array();
foreach($checkInQs as $q){
$checkInInsertQuery[] = "('',?, 1, ?)";
$checkInData[] = $geofenceID;
$checkInData[] = $q;
}
我知道当前模式与3334445555匹配,但它不是我想要的,当我尝试添加括号时,javascript控制台只是给出了错误的正则表达式语法错误。需要有关语法的帮助。
另外作为奖励,如果你知道如何让它显示一个自助的错误信息。目前我的data-tel-msg无效。
答案 0 :(得分:1)
您可以使用以下代码:
input:valid {
color: green;
}
input:invalid {
color: red;
}

<form name="form1">
<input value="(555) 324-5643" type="tel" title="Invalid Phone Number!" class="k-textbox" pattern="[(][0-9]{3}[)] [0-9]{3}-[0-9]{4}" required />
<input type="Submit"/>
</form>
&#13;
正则表达式\(\d{3}\)\s\d{3}-\d{4}
匹配(###) ###-####
格式的字符串,因为默认情况下HTML5模式被锚定(到字符串的开头和结尾)。
title
属性允许显示错误文字。
如果环境中的反斜杠丢失,只需将其加倍,或将\d
替换为[0-9]
。要匹配文字\(
,您还可以使用字符类:[(]
()
相同:[)]
)。在角色类中,这些(
和)
会失去他们的特殊&#34;分组意义。