【积累】validate验证框架的使用
validate验证框架的使用:用验证框架可以很方便的验证前端页面输入的内容可以自定义验证方法
内容:0:环境搭建 1:基础用法 2:自定义用法
0:基本环境的搭建
0.1:下载js文件
0.2:引入js文件
0.3:使用(废话)
1:基础用法
利用自带验证验证输入内容
jsp页面:
<form action="/activeAccount" id="registerform"method="post"> <div>
<label>用户账号 :</label>
<input type="text" placeholder="输入账号" name="account" id="r_account"/>
</div>
<div class="inputwrapper clefix">
<label>登录密码 :</label>
<input type="password" placeholder="输入密码" name="password" id="r_password"/>
</div>
<div class="inputwrapper">
<label>重复密码 :</label>
<input type="password" placeholder="再次输入密码" name="passwords" id="r_passwords"/>
</div>
<div class="agreewrapper">
<input type="checkbox" id="readit" name="readit"/> 我已阅读并同意 <a href="#">《网站服务协议》</a>
</div> <!-- 这里用的是submit 如果用button就无法运行了 2016/11/4补充:其实使用button也是可以的-->
<input type="submit" class="registerBtn commonBtn" value="立即注册"/> </form>
js页面:
//这里的registerform是form的id,不能用点击的那个按钮的id
$('#registerform').validate({ //这里配置的是错误信息输出的位置,可以根据需要来写
//我这里用的是layer,可以换成其他的
errorPlacement: function(error, element) {
layer.tips(error.text(), element, {
tips: [2,seajs.data.vars.tipcolor],
tipsMore: true
});
} , //验证规则
rules: {
//这是需要验证的内容的name 一定要是name
account: {
//这里是验证的规则 以key,value的形式写的
//required 验证的是非空
required: true,
},
password: {
required: true,
//rangelength 验证的是输入的内容的长度
rangelength:[6,16],
},
passwords: {
required: true,
//equalTo 与...相等 后面的值是...的id值
equalTo: "#r_password",
},
verify: {
required: true,
},
readit: {
required: true,
}, },
//提示信息
messages: {
//这里同验证规则,也是name
account:{
//这里是提示的信息,一样以key,value的形式写的
required:'请输入帐号',
},
password: {
required: "请输入密码",
rangelength:'密码长度在6-16之间',
},
passwords: {
required: "请再次输入密码",
equalTo: "两次密码输入的不一致",
},
verify: {
required: "请输入验证码",
},
readit: {
required: "请勾选用户协议",
},
},
//当表单验证成功并提交时执行
submitHandler:function(form){
//里面写要执行的函数,比如保存数据之类的
} });
常用的自带验证规则:
required:true 必输字段
remote:”check.php” 使用ajax方法调用check.php验证输入值
email:true 必须输入正确格式的电子邮件
url:true 必须输入正确格式的网址
date:true 必须输入正确格式的日期
dateISO:true 必须输入正确格式的日期(ISO),例如:2009-06-23,1998/01/22 只验证格式,不验证有效性
number:true 必须输入合法的数字(负数,小数)
digits:true 必须输入整数
creditcard: 必须输入合法的信用卡号
equalTo:”#id” 输入值必须和#id相同
accept: 输入拥有合法后缀名的字符串(上传文件的后缀)
maxlength:5 输入长度最多是5的字符串(汉字算一个字符)
minlength:10 输入长度最小是10的字符串(汉字算一个字符)
rangelength:[5,10] 输入长度必须介于 5 和 10 之间的字符串”)(汉字算一个字符)
range:[5,10] 输入值必须介于 5 和 10 之间
max:5 输入值不能大于5
min:10 输入值不能小于10
2:自定义用法
自带的定义规则无法满足验证需求的时候,可以利用jQuery.validator.addMethod()方法
js页面:
//自定义验证方法 "isexist"是这个方法的名字
jQuery.validator.addMethod("isexist", function(value,element) { //这里写验证方法
//最后返回一个boolean类型的值
//如果是true就是验证通过,如果是false就是验证未通过
return true; }, "这里写默认提示");
一个写好的验证是否已经注册过的例子:
这里面用了layer弹窗,不过不要在意那些细节...只是一个例子...
//验证方法 验证帐号是否已经被注册
jQuery.validator.addMethod("isexist", function(value,element) {
var type = $("#type").val();
$.ajax({
type : "post",
url : "/checkAccountIsExist",
data : {account:value,type:type},
dataType : "json",
success : function(data){
if(data == 0) {
return true;
} else {
layer.confirm('该帐号已经被注册,现在去登录?', {
btn: ['前去登录','留在这里']
}, function(){
window.location.href="/userlogin";
}, function(){
layer.closeAll();
return false;
});
}
}
});
}, "该帐号已经被注册");
定义完成后就可以在验证规则中直接使用该方法了。
大致结果:
【积累】validate验证框架的使用的更多相关文章
- jQuery Validate验证框架详解
转自:http://www.cnblogs.com/linjiqin/p/3431835.html jQuery校验官网地址:http://bassistance.de/jquery-plugins/ ...
- 【转】jQuery Validate验证框架详解
jQuery校验官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation 一.导入js库 <script type=& ...
- jQuery Validate验证框架与 jQuery ajaxSubmit的联合使用
jQuery Validate验证框架自定义验证 第一步导入导入js库 <script src="<%=basePath%>static/js/jquery.js" ...
- atitit.jQuery Validate验证框架详解与ati Validate 设计新特性
atitit.jQuery Validate验证框架详解与ati Validate 设计新特性 1. AtiValidate的目标1 2. 默的认校验规则1 2.1. 使用方式 1.metadata用 ...
- jQuery Validate验证框架详解(jquery.validate.min.js)
原博客 jQuery Validate验证框架详解 jQuery校验官网地址:https://jqueryvalidation.org/ 一.导入js库 <script type="t ...
- jQuery Validate验证框架详解(转)
jQuery校验官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation 一.导入js库 <script type=& ...
- jQuery Validate验证框架详解,提交前验证
现在都用h5表单进行验证了,以下方式仅做回忆 https://www.runoob.com/jquery/jquery-plugin-validate.html <!DOCTYPE HTML P ...
- 【转】jquery validate验证框架与kindeditor使用需二次提交的问题
原文:http://blog.csdn.net/wlsyn/article/details/11536399在使用jquery的验证框架对kindeditor富文本编辑器进行验证的过程中,发现提 交时 ...
- hibernate validate验证框架中@NotEmpty、@NotbBank、@NotNull的区别
Hibernate Validator验证框架中@NotEmpty.@NotBlank.@NotNull 的区别 Hibernate Validator验证框架中@NotEmpty.@NotBlank ...
随机推荐
- 用Windows+VirtualBox搭建嵌入式Linux开发环境
Windows+VirtualBox的嵌入式Linux开发环境的搭建 最近一直在学习Linux的设备驱动编写,一直是在物理机上安装的Ubuntu进行的,但是在Ubuntu12.04的系统中,已经不能用 ...
- $.ajx的用法
$.ajax({type:'post',//可选geturl:'action.php',//这里是接收数据的PHP程序data:'data='dsa'',//传给PHP的数据,多个参数用&连接 ...
- Add a Syscall
Add a syscall to kernel and replace linux kernel of RPi. Prepare: Cross compiler Linux Kernel for RP ...
- Html5shiv
说明编辑 越来越多的站点开始使用 HTML5 标签.但情况是还有很多人在使用IE6,IE7,IE8.为了让所有网站浏览者都能正常的访问网站, 2解决方案编辑 有下面两个: 为网站创建多套模板,通过程序 ...
- failed to lazily initialize a collection of role:XXX, no sessi
系统 框架 springMVC+hibernate 这种情况 由于 hibernate 的 懒汉机制,和 Spring 事务机制(不确定)造成的 由于 spring 配置的时候,在service 层 ...
- Ansible 学习笔记
最近因为需要管理很多台机器,而这些机器又需要频繁重新安装,实在受不了Puppet需要在每个客户机上都安装一遍,于是转头开始学些Ansible.根据这段时间的使用,这个确实是神器,唯一的感觉就是相见恨晚 ...
- 霍尼韦尔FC400A与FC400B的区别
给霍尼韦尔官方打电话咨询了下,发现两者区别不大,唯一的区别是400B可以和主机联动,也就是主机关的时候,400B也可以自动关闭,不需要手动去关闭电源,这样非常方便. 本来官方是只有400A的时候,但是 ...
- CRM 2013 限制Lookup
var oTo = document.getElementById("customerid_i"); oTo.setAttribute("defaulttype" ...
- .net与数据库知识点
<%服务器方法;%> (调用服务器方法,要写;) <=%服务器方法%> (有返回值输出,不能写;) public ActionResult Index(int id = 0) ...
- MooseFS
http://www.moosefs.org/