
下面把api文档的查阅位置添加如下
[w3cSchool_事件属性]w3School
[w3cSchool_input标签]w3cSchool
在H5中的input的新type属性email自带格式验证
示例代码:
当我们点击提交按钮时,如果输入的email格式不正确,会弹出提示信息
email标签并不会验证内容是否为空,这个需要注意

email自带提示.png
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <form action=""> email:<input type="email" name="userEmail"> <br/> <input type="submit"> </form> </body> </html>
对于没有自带验证效果的标签,就需要手动添加属性增加验证了
使用方法:
只需要添加required属性即可,不需要赋值
示例代码:
当控件没有输入任何内容直接点击提交时,会弹出提示

required属性.png
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <form action=""> email:<input type="email" name="userEmail"> <br/> tel:<input type="tel" required> <br/> <input type="submit"> </form> </body> </html>
使用required标签只能够验证内容是否为空,如果想要验证的更为准确就需要自定义验证规则了
使用方法:
在需要添加自定义验证规则的元素中添加required标签
使用正则表达式编写验证规则
示例代码:
当我们输入的内容跟验证条件不符时,就会弹出对应的提示

自定义验证.png
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form action="">
email:<input type="email" name="userEmail">
<br/>
tel:<input type="tel" required pattern="[0-9]{3}">
<br/>
<input type="submit">
</form>
</body>
</html>系统的提示消息只能够提示格式错误,如果想要更为详细的就需要我们通过js来自定义了
使用方法:
注册事件:oninput:输入时,oninvalid验证失败
设置自定义信息dom.setCustomValidity("这里输入提示信息");
示例代码:
输入时,会弹出oninput绑定的代码

输入中.png
验证失败时,会弹出oninvalid绑定的代码

验证失败.png
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form action="">
email:<input type="email" name="userEmail">
<br/>
tel:<input type="tel" required pattern="[0-9]{3}" id="telInput">
<br/>
<input type="submit">
</form>
</body>
</html>
<script>
var telInput = document.getElementById("telInput");
// 正在输入时
telInput.oninput=function () {
this.setCustomValidity("请正确输入哦");
}
// 验证失败时
telInput.oninvalid=function(){
this.setCustomValidity("请不要输入火星的手机号好吗?");
};
</script>优点:
html5自带的验证使用便捷
不需要额外的js框架
缺点:
兼容性问题
如果想要兼容所有浏览器,建议使用js验证框架
【相关推荐】
1. 免费h5在线视频教程
2. HTML5 完整版手册
3. php.cn原创html5视频教程
