javascript html5实现表单验证
作者:bea
表单验证为终端用户检测无效的数据并标记这些错误,是一种用户体验的优化。 下面展现浏览器自带的验证功能也可在移动端中查看: HTML部分: <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0,minimum-sc
表单验证为终端用户检测无效的数据并标记这些错误,是一种用户体验的优化。
下面展现浏览器自带的验证功能也可在移动端中查看:
HTML部分:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0">
<title>html5 表单验证</title>
</head>
<body>
<form action="#" id="formValid" class="myform" novalidate="novalidate" onsubmit="return checkForm()">
<fieldset>
<div class="form-group">
<label for="name">名称</label>
<div>
<input type="text" class="form-control" id="name" name="name" required/>
<span class="form-error">不能为空</span>
</div>
</div>
<div class="form-group">
<label for="email">邮箱</label>
<div>
<input type="email" class="form-control" id="email" name="email" required/>
<span class="form-error">邮箱格式不正确</span>
</div>
</div>
<div class="form-group">
<label>省份</label>
<select name="province" class="form-control">
<option value="">请选择</option>
<option value="s">四川</option>
<option value="c">重庆</option>
</select>
</div>
<input type="submit" class="btn" value="提交"/>
</fieldset>
</form>
</body>
</html>
CSS部分:
fieldset{border: 0;}
.myform .form-control{
display: block;
padding: 5px;
width: 100%
}
.myform input:focus:invalid + .form-error{
display: inline;
}
.myform .form-error{
display: none;
position: absolute;
margin-top: .7em;
padding: 1px 2px;
color: #fff;
font-size: .875rem;
background: #f40;
}
.myform .form-error:after{
position: absolute;
content: "";
top: -.5em;
left: .5em;
z-index: 100;
display: inline-block;
width: 0;
height: 0;
vertical-align: middle;
border-bottom: .5em solid #f40;
border-right: .5em solid transparent;
border-left: .5em solid transparent;
border-top: 0 dotted;
transform: rotate(360deg);
overflow: hidden;
}
.btn{
padding: 5px 20px;
}
JavaScript部分:
function checkForm(){
var myform = document.getElementById("formValid");
return check(myform.elements);
}
function check(eles){
var ele;
for(var i = 0;i<eles.length;i++){
ele = eles[i];
if(ele.nodeName == "SELECT"){
if(!ele.selectedIndex){
alert("请选择省份");
return false;
}
}else if(ele.name){
if(!ele.checkValidity()){
ele.focus();
return false;
}
}
}
return true;
}
以上就是javascript结合html5实现表单验证的全部代码,希望对大家的学习有所帮助。
猜你喜欢
您可能感兴趣的文章:
- JS简单实现String转Date的方法
- 基于Jquery和html5实现炫酷的3D焦点图动画
- JS判断是否长按某一键的方法
- JS实现为排序好的字符串找出重复行的方法
- 使用NodeJs 开发微信公众号(三)微信事件交互实例
- 在页面中输出当前客户端时间javascript实例代码
- 基于jQuery实现仿51job城市选择功能实例代码
- 基于JavaScript实现类似于百度学术高级检索功能
- js密码强度实时检测代码
- js+css实现回到顶部按钮(back to top)
- Node.js中JavaScript操作MySQL的常用方法整理
- 通过node-mysql搭建Windows+Node.js+MySQL环境的教程
- jquery自定义右键菜单、全选、不连续选择
- Node.js的MongoDB驱动Mongoose基本使用教程
- 详解Wondows下Node.js使用MongoDB的环境配置
- 安装使用Mongoose配合Node.js操作MongoDB的基础教程
- 如何使用Bootstrap的modal组件自定义alert,confirm和modal对话框
- JavaScript html5 canvas绘制时钟效果
- javascript使用Promise对象实现异步编程