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验证框架的使用的更多相关文章

  1. jQuery Validate验证框架详解

    转自:http://www.cnblogs.com/linjiqin/p/3431835.html jQuery校验官网地址:http://bassistance.de/jquery-plugins/ ...

  2. 【转】jQuery Validate验证框架详解

    jQuery校验官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation 一.导入js库 <script type=& ...

  3. jQuery Validate验证框架与 jQuery ajaxSubmit的联合使用

    jQuery Validate验证框架自定义验证 第一步导入导入js库 <script src="<%=basePath%>static/js/jquery.js" ...

  4. atitit.jQuery Validate验证框架详解与ati Validate 设计新特性

    atitit.jQuery Validate验证框架详解与ati Validate 设计新特性 1. AtiValidate的目标1 2. 默的认校验规则1 2.1. 使用方式 1.metadata用 ...

  5. jQuery Validate验证框架详解(jquery.validate.min.js)

    原博客 jQuery Validate验证框架详解 jQuery校验官网地址:https://jqueryvalidation.org/ 一.导入js库 <script type="t ...

  6. jQuery Validate验证框架详解(转)

    jQuery校验官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation 一.导入js库 <script type=& ...

  7. jQuery Validate验证框架详解,提交前验证

    现在都用h5表单进行验证了,以下方式仅做回忆 https://www.runoob.com/jquery/jquery-plugin-validate.html <!DOCTYPE HTML P ...

  8. 【转】jquery validate验证框架与kindeditor使用需二次提交的问题

    原文:http://blog.csdn.net/wlsyn/article/details/11536399在使用jquery的验证框架对kindeditor富文本编辑器进行验证的过程中,发现提 交时 ...

  9. hibernate validate验证框架中@NotEmpty、@NotbBank、@NotNull的区别

    Hibernate Validator验证框架中@NotEmpty.@NotBlank.@NotNull 的区别 Hibernate Validator验证框架中@NotEmpty.@NotBlank ...

随机推荐

  1. Hdu 2955 Robberies 0/1背包

    Robberies Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total S ...

  2. 使用geoserver发布arcgis切片

    arcgis map 版本:10.1,10.2,10.3均可 jre:7或者8 geoserver:2.8.2以上 切片:松散型,256*256  ,png 1:安装geoserver并独立部署geo ...

  3. android下面使用SurfaceView+ mediaPlayer播放视频

    final SurfaceView surfaceView = new SurfaceView(StartupActivity.this); StartupActivity.this.mediaPla ...

  4. HTML5 input placeholder 颜色修改

    在开发中遇到的一个小问题,记录下来./*placehodel*/ input:-ms-input-placeholder{color:#a9a9a9;}/* Internet Explorer 10+ ...

  5. 通过队列解决Lucene文件并发创建索引

    public sealed class SearchIndexManager { private static readonly SearchIndexManager searchIndexManag ...

  6. BigDecimal使用中的坑

    1.BigeDecimal调用divide时一定要记得规定小数位数的保留情况,不然除不尽的时候报错. 2.使用该种BigeDecimal时,加减乘除都要使用它内部封装好的方法,不然容易报错.

  7. mysql数据库服务日志

    mysql数据库服务日志 ①. 错误日志:error_log ②. 普通日志:general_log ③. 慢查询日志:log-slow-query #有3个参数 分割:.mv .编写定时任务并执行: ...

  8. Oracle12c CDB和PDB数据库的启动与关闭说明

    Oracle 12c中,增加了可插接数据库的概念,即PDB,允许一个数据库容器(CDB)承载多个可插拔数据库(PDB). CDB全称为Container Database,中文翻译为数据库容器,PDB ...

  9. Codeforces 731C:Socks(并查集)

    http://codeforces.com/problemset/problem/731/C 题意:有n只袜子,m天,k个颜色,每个袜子有一个颜色,再给出m天,每天有两只袜子,每只袜子可能不同颜色,问 ...

  10. ASP.NET MVC中viewData、viewBag和templateData的区别

    在MVC3开始,视图数据可以通过ViewBag属性访问,在MVC2中则是使用ViewData.MVC3中保留了ViewData的使用.ViewBag是动态类型(dynamic),ViewData是一个 ...