jQuery Validation 插件

优点:
1.表单验证非常简单方便,并且提供了许多配置项目
2.国际化,可以自定义提示信息

命令行安装

//初始化bower
bower init

//使用bower安装jquery
bower install jquery --save-dev

//使用bower安装jquery-validate插件
bower install jquery-validate --save-dev

//使用bower安装angular
bower install angular --save-dev

最简单的效果:
<form id="demoForm">
<fieldset>
<legend>用户登录</legend>
<p>
<label for="username" style="display: inline-block;width: 80px;">用户名:</label>
<input type="text" name="username" id="username"/>
</p>
<p>
<label for="password" style="display: inline-block;width: 80px;">密码:</label>
<input type="password" name="password" id="password"/>
</p>
<p>
<input type="submit"/>
</p>
</fieldset>
</form>

<!-- 要先引入jquery插件,再引入jquery.validate -->
<script src="bower_components/jquery/dist/jquery.min.js"></script>
<script src="bower_components/jquery-validation/dist/jquery.validate.min.js"></script>
<script>
$('#demoForm').validate({
rules: { //rules里面的username和password都是name的属性值,而不是id
username: {
required: true,
minlength:2,
maxlength:10
},
password: {
required:true,
minlength:2,
maxlength:16
}
},
messages: {
username: {
required: '必须填写用户名',
minlength: '不低于2位',
maxlength: '不大于10位'
},
password: {
required:'必须填写密码',
minlength: '不低于2位',
maxlength: '不低于16位'
}
}
});
</script>

注意:rules里面的username和password都是name的属性值,而不是id

//点击提交按钮不提交
$('#demoForm').validate({
debug:true
});

基本验证方法
required 必填
remote:'remote.php/remote.json' 远程校验
minlength 最小长度
maxlength 最大长度
rangelength: [2, 10] 长度
min 最小值(代表数字的值)
max 最大值(代表数字的值)
range: [2, 10] 值范围(代表数字的值)(数字在2-10之间)
email:true Email格式
url:true URL格式
date:true 日期
dataISO:true 日期(格式是:yyy-mm-dd 或者 yyy/mm/dd)
number 数字
digits 整数
equlaTo 与另一个元素值相等

高级API
valid()方法:检查表单是否验证通过或某些元素是否有效

$('#check').click(function () {
console.log($('#demoForm').valid() ? '表单填写正确' : '表单填写错误');
});

rules()方法(浏览器控制台输入验证console)
1.rules() 获取表单某一元素的校验规则
$('#username').rules();
//Object {required: true, rangelength: Array[2], remote: "remote.json"}

2.rules('add', rules) 向表单增加校验规则
$('#username').rules('add', {minlength: 2, maxlength:10});
//Object {required: true, rangelength: Array[2], minlength: 2, maxlength: 10, remote: "remote.json"}

3.rules('remove', rules) 删除表单元素校验规则
$('#username').rules('remove', 'minlength maxlength')
//Object {minlength: 2, maxlength: 10}
$('#username').rules()
//Object {required: true, rangelength: Array[2], remote: "remote.json"}

Validator对象

var validator = $('#form').validate({});
validate()方法返回Validator对象
Validator对象的方法:
Validator.form() 验证表单是否有效,返回 true/false
Validator.element(element) 验证某个元素是否有效,返回true/false
Validator.resetForm() 把表单恢复到验证前原来的状态(错误信息会被清除掉)
Validator.showErrors(errors) 针对某个元素显示特定的错误信息
Validator.numberOfInvalids() 返回无效的元素数量(要触发验证var bool = $('#demoForm').valid(),才能统计数量)

[红字]提示:在console控制台,shift+enter才是换到下一行,enter是提交

validator.showErrors({
username:'你填错了,哈哈'
});

Validator对象的静态方法 — — 直接调用
$.validator.addMethod(name,method[,message]) 增加自定义的验证方法
$.validator.format(template,argument,argumentN...) 格式化字符串,用参数代替模板中的{n}
$.validator.setDefaults(options) 修改插件默认设置
$.validator.addClassRules(name,rules) 为包含class属性名批量增加验证类型(下图为实例,给classname为“txt”的元素添加验证类

型)

validate()方法配置项(jquery-validate插件的核心内容)
submitHandler通过验证后运行的函数,可以加上表单提交方法
invalidHandler无效表单提交后运行的函数
ignore对某些元素不进行验证
rules定义校验规则
messages定义提示信息
groups对一组元素的验证,用一个错误提示,用errorPlacement控制把出错信息放在那实例调用:
submitHandler:function(from){
//表单提交的方式
from.submit();

//表单序列化
console.log($(form).serialize());
}

ignore:"#hh" 对类hh不进行校验

每个rules的配置方法都有一个默认depends:function(element){条件},表示当函数满足条件时,才开始检验该配置方法<br>
当配置方法有参数时可为该方法添加参数param:x,当depends中函数满足条件时才传入参数进行配置

username:{
required:{
depends:function(element){
return $("#password").is(":filled"); //只有当密码被填写时才验证用户名
}
}
}

更多参考API文档。。。。

jquery-validate插件的更多相关文章

  1. jquery.validate插件在booststarp中的运用

    现在在网络上已经可以找到很多基于bootstarp的表单认证,但是验证的都不全面的,下载后,我们还要理解作者的思路然后进行修改添加,这种修改方式往往适合学习,时间很多的时候.但是我们很多时候是没有时间 ...

  2. jQuery Validate 插件

    >>>>>>>>>>>>>>>>>>>>>>>>> ...

  3. jquery validate 插件使用小结

    项目中整合了jquery validate插件,仿照别人的使用写了我的表单验证,结果不起作用.然后就各种找原因. 在网上下了jquery validate插件的完整包,看了看里边的例子,跟我的使用貌似 ...

  4. 【jQuery】(6)---jQuery validate插件

    jQuery  validate插件 一.导入js库                                      先导入jQuery库,然后导入Validate插件,如果是中文提示还需要 ...

  5. JQuery Validate插件与实现

    菜鸟拙见,望请纠正 一:效果展示:以下是两个注册表单验证,左边使用Jquery validate插件实现,右边是自己用JQuery实现,效果差不多,但个人推荐用插件,毕竟前人栽了树而且长大了后人当然好 ...

  6. jQuery Validate 插件为表单提供了强大的验证功能

    之前项目开发中,表单校验用的jQuery Validate 插件,这个插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求.该插件捆绑了一套有用的 ...

  7. 使用JQuery.Validate插件来校验页面表单有效性

    使用JQuery.Validate插件来校验页面表单有效性​1. [代码] 常见的注册表单元素 <form action="#" method="post" ...

  8. jQuery Validate插件实现表单强大的验证功能

    转自:http://www.jb51.net/article/76595.htm jQuery Validate插件捆绑了一套有用的验证方法,包括 URL 和电子邮件验证,同时提供了一个用来编写用户自 ...

  9. 前端验证,jquery.validate插件

    jQuery Validate 简介: jQuery Validate 插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求.该插件捆绑了一套有用 ...

  10. 表单验证神器——jquery.validate插件

    jquery.validate.js插件应用举例,ajax方式提交数据. html代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Tr ...

随机推荐

  1. iOS 11 ScrollView偏移问题解决

    if (@available(iOS 11.0, *)){//避免滚动视图顶部出现20的空白以及push或者pop的时候页面有一个上移或者下移的异常动画的问题 [[UIScrollView appea ...

  2. 2019.2.26考试T2 矩阵快速幂加速DP

    \(\color{#0066ff}{题解 }\) 可以发现, 数据范围中的n特别小,容易想到状压 可以想到类似于状压DP的思路,按列进行转移 那么应该有3维,\(f[i][j][k]\)代表到第i列, ...

  3. 本地命令上传文件到服务器以及linux编辑过程中非正常退出问题

    一.上传文件到linux服务器首先从你本地切换到你要上传文件的目录,接下来:scp 文件名字 服务器用户名字@服务器ip:存储路径例子:scp  index.html  root@106.75.229 ...

  4. 二叉树的遍历 &【NOIP2001普及组】& 洛谷 P1030 求先序排列

    题目链接 https://www.luogu.org/problemnew/show/P1030 模板题 先讲一下二叉树的遍历 二叉树的遍历 分类 性质 求法 分为三类: 先序遍历(PreOrder) ...

  5. Linux中切换前后台命令:ctrl+z,bg,fg,jobs

    一.运行某些服务的时候,我希望切换到后台运行: 两种方法: 1.可以在运行的时候,在启动服务命令的最后面加一个字符&,例如 ./serviceStart & 2.在服务启动后,按ctr ...

  6. html td 限制 高度 和 宽度

    td 要设置成 display : block td 里面的span 自动换行.. <td style="max-width: 150px;overflow-y:scroll;disp ...

  7. 解决windows server 2008 r2 登录进入桌面只显示一片蓝色背景

    非常高的可能性问题是:explorer.exe进程无法加载.请按ctrl+shift+esc调出任务管理器--文件-新任务-输入‘explorer’--确定即可.如无法解决,请进入安全模式关闭非必要的 ...

  8. pandas学习3(数据处理)

  9. 数据分析之Anaconda安装

    Anaconda概述 Anaconda是一个用于科学计算的Python发行版,支持 Linux, Mac, Windows系统,提供了包管理与环境管理的功能,可以很方便地解决多版本python并存.切 ...

  10. 一个简单的基于MINI2440开发板的启动代码

    1. S3C2440大概的启动流程(NAND启动): ①设置CPU为SVC模式 ②关闭看门狗 ③屏蔽中断 ④关闭MMU ⑤初始化时钟 ⑥初始化内存(SDRAM) ⑦初始化栈指针(SP, R13) ⑧初 ...