jquery.validate.js表单验证
官方网站: http://bassistance.de/jquery-plugins/jquery-plugin-validation/
API: http://jquery.bassistance.de/api-browser/plugins.html
当前版本:1.5.5
需要JQuery版本:1.2.6+, 兼容 1.3.2
<script src="../js/jquery.js" type="text/javascript"></script>
<script src="../js/jquery.validate.js" type="text/javascript"></script>
(1)required:true 必输字段
(2)remote:"check.php" 使用ajax方法调用check.php验证输入值
(3)email:true 必须输入正确格式的电子邮件
(4)url:true必须输入正确格式的网址
(5)date:true 必须输入正确格式的日期
(6)dateISO:true必须输入正确格式的日期(ISO),例如:2009-06-23,1998/01/22 只验证格式,不验证有效性
(7)number:true 必须输入合法的数字(负数,小数)
(8)digits:true 必须输入整数
(9)creditcard: 必须输入合法的信用卡号
(10)equalTo:"#field" 输入值必须和#field相同
(11)accept:输入拥有合法后缀名的字符串(上传文件的后缀)
(12)maxlength:5输入长度最多是5的字符串(汉字算一个字符)
(13)minlength:10 输入长度最小是10的字符串(汉字算一个字符)
(14)rangelength:[5,10] 输入长度必须介于 5 和 10 之间的字符串")(汉字算一个字符)
(15)range:[5,10] 输入值必须介于 5 和 10 之间
(16)max:5 输入值不能大于5
(17)min:10 输入值不能小于10
例子:自定义密码验证的规则
我来举个例子,很简单的<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
function formCheck(){//表单验证
var userForm=document.forms.userForm
if(userForm.username.value==null||userForm.username.value.length<=0){
alert("用户名不能为空")
return false
}else if(userForm.username.value.length<6||userForm.username.value.length>20){
alert("用户名必须为6-20位")
return false
}else if(userForm.password.value==null||userForm.password.value.length<=0){
alert("密码不能为空")
return false
}else if(userForm.password.value.length<6||userForm.password.value.length>20){
alert("密码必须为6-20位")
return false
}else{
userForm.submit()
}
}
</script>
</head>
<body>
<form action="" name="userForm">
userName:<input type="text" name="username"><br>
password:<input type="password" name="password"><br>
<input type="button" value="提交" onclick=" formCheck()">
</form>
</body>
</html>
验证函数如下:function chkfrm(o){
if(!/\d+/gi.test(o.empid.value)){
alert('雇员编号:只能是数字。')
return false
}
if(o.empname.value==''){
alert('雇员姓名:不能为空。')
return false
}
if(o.empjob.value==''){
alert('雇员工作:不能为空。')
return false
}
if(!/^((((1[6-9]|[2-9]\d)\d{2})[-\/](0?[13578]|1[02])[-\/](0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})[-\/](0?[13456789]|1[012])[-\/](0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})[-\/]0?2[-\/](0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))[-\/]0?2[-\/]29[-\/]))$/gi.test(o.emptime.value)){
alert('雇佣日期:必须是日期格式,即2013-03-02')
return false
}
if(isNaN(o.empmoney.value)){
alert('基本工资:必须是数字(小数)')
return false
}
if(isNaN(o.emprw.value)){
alert('奖金:必须是数字(小数)')
return false
}
}
将
<form action="" method="post">
改为
<form action="" method="post" onsubmit="javascript:return chkfrm(this)">
即可