三、jQuery--jQuery插件--jQuery插件——Validation Plugin
简介:
客户端验证:现代网站填写表单时,几乎一定会采用的方式。
优点:1、可以减少服务器压力
2、缩短用户等待时间和提升用户体验
jQuery有很多表单验证插件:https://plugins.jquery.com/tag/validate/
其中jQuery Validation插件是最常用的插件之一:https://jqueryvalidation.org/
jQuery Validation插件:
1、让客户端表单验证变得非常容易,并且提供了很多的配置项目;
2、插件还附带了很多验证方法,并实现了国际化,可以配置多语言的提示信息。
如何使用:
在页面中引入插件
<script src="jquery.js"></script>
<script src="jquery.validate.js"></script>
例如:用户名密码必填,用户名大于2个字符小于10个字符,密码大于2个字符小于16个字符,可以如下进行设置:
注意:这里的username和password是与表单里的name对应的,而不是ID。
基本API
重要概念
method:验证方法,指的是校验逻辑,比如email方法,检查输入的文本是否符合email的规则。
rule:验证规则,指的是元素和验证方法的关联。比如页面的一个id为email的文本框,需要带有email的验证方法。
validate()方法
validate是插件的核心方法,定义了基本的校验规则和一些有用的配置项。例如debug,如果这个参数为true,那么表单不会提交,只会进行检查,调试时十分方便。
基本验证方法:
required 必填
remote 远程校验
minlength 最小长度
maxlength 最大长度
rangelength 长度范围
min 最小值 (数值)
max 最大值(数值)
range 值范围(数值)
email Email格式
url URL格式
date 日期
dateIOS IOS日期
number 数字
digits 整数 (非负整数)
equalTo 与另一个元素值相等
高级API
valid()方法:
检查表单或某些元素是否有效
rules()方法(注意:只能针对元素使用)
rules():获取表单元素的校验规则
rules("add",rules) 向表单元素增加校验规则
rules("remove",rules) 删除表单元素校验规则(同时移出多个校验规则可以将他们用空格隔开即可)
validator对象
validate方法返回Validator对象,Validator对象有很多有用的方法:
Validator.form() 验证表单是否有效,返回true/false
Validator.element(element) 验证某个元素是否有效,返回true/false
Validator.resetForm() 把表单恢复到验证前原来的状态
Validator.showErrors(errors) 针对某个元素显示特定的错误信息
Validator.numberOfInvalids() 返回无效的元素数量
validator对象还有很多有用的静态方法,可以直接使用:
jQuery.validator.addMethod(name,method[,message])
增加自定义验证方法
jQuery.validator.format(template,argument,argumentN...)
格式化字符串,用参数代替模板中的{N}
jQuery.validator.setDefaults(options)
修改插件默认设置
jQuery.validator.addClassRules(name,rules)
为某些名为name的class增加组合验证类型
validate()方法配置项
submitHandler 通过验证后运行的函数,可以加上表单提交的方法
invalidHandler 无效表单提交后运行的函数
ignore 对某些元素不进行验证
rules 定义校验规则
messages 定义提示信息
groups 对一组元素的验证,用一个错误提示,用errorPlacement控制把出错信息放在哪里
onsubmit 是否在提交时验证
onfocusout 是否在获取焦点时验证
onkeyup 是否在敲击键盘时验证
onclick 是否在鼠标点击时验证,一般用于checkbox或者radio
focusInvalid 提交表单后,未通过验证的表单(第一个或提交之前获得焦点的未通过验证的表单)是否会获得焦点
focusCleanup 当未通过验证的元素获得焦点时,是否移出错误提示
errorClass 指定错误提示的CSS类名,可以自定义错误提示的样式
validClass 指定验证通过的CSS类名
errorElement 使用什么标签标记错误
wrapper 使用什么标签把上面的errorElement包裹起来
errorLabelContainer 把错误信息统一放在一个容器里面
errorContainer 显示或者隐藏验证信息,可以自动实现有错误信息出现时把容器属性变为显示,无错误时隐藏(容器原始状态为隐藏)
showErrors 可以显示总共有多少个未通过验证的元素
errorPlacement 自定义错误信息放在哪里
success 要验证的元素通过验证后的动作
highlight 可以给未通过验证的元素添加效果
unhighlight 去除未通过验证的元素的效果,一般和highlight同时使用
选择器拓展
:blank 选择所有值为空的元素
:filled 选择所有值不为空的元素
:unchecked 选择所有没有被选中的元素
自定义验证方法
jQuery.validator.addMethod(name,method[,message])
name:方法名称
method:function(value,element,params)方法逻辑
message:提示信息
additional-methods.js 包含了很多扩展验证方法
additional-methods插件实现了国际化
下面的代码就是官方给出的中文国际化的代码:
安全性
客户端校验安全
在数据被输入程序前,必须对数据合法性进行校验,非法输入问题是最常见的web应用程序安全漏洞
所有提交的表单数据,都必须验证两次,即提交前在客户端验证,提交后再服务器端再次验证,保证数据的合法性
服务器端不要相信任何的客户端数据!
三、jQuery--jQuery插件--jQuery插件——Validation Plugin的更多相关文章
- (转)jQuery Validation Plugin客户端表单证验插件
jQuery Validation Plugin客户端表单验证插件 官方文档:http://jqueryvalidation.org/documentation/ 官方demo:http://jque ...
- 表单验证的validate.js插件---jQuery Validation Plugin
早上在公交车上看了一个关于慕课网的教程<表单验证的validate.js插件---jQuery Validation Plugin>,正好可以用到自己近期开发简易微博的注册页面和登录页面, ...
- 【jQuery】学习jQuery插件的使用与写法(表单验证插件-validation)
最新最全的插件可以从jQuery官方网站的插件板块下载,网站地址为:http://plugins.jquery.com/ Validation优点:内置验证规则:自定义验证规则:简单强大的验证信息提示 ...
- 【jQuery基础学习】06 jQuery表单验证插件-Validation
jQuery的基础部分前面都讲完了,那么就看插件了. 关于jQuery表单验证插件-Validation validation特点: 内置验证规则:拥有必填.数字.E-Mail.URL和信用卡号码等1 ...
- jQuery 表单验证插件 jQuery Validation Engine 使用
jQuery 表单验证插件 jQuery Validation Engine 使用方式如下: 1.引入头文件(注意一定要把jQuery放在前面),指定使用 jQuery Validation Engi ...
- JQuery插件使用之Validation 快速完成表单验证的几种方式
JQuery的Validation插件可以到http://plugins.jquery.com/上去下载.今天来分享一下,关于这个插件的使用. 简易使用 这第一种方式可谓是傻瓜式的使用,我们只需要按照 ...
- 三、jQuery--jQuery基础--jQuery基础课程--第9章 jQuery 常用插件
1.表单验证插件——validate 该插件自带包含必填.数字.URL在内容的验证规则,即时显示异常信息,此外,还允许自定义验证规则,插件调用方法如下:$(form).validate({option ...
- jQuery框架学习第十一天:实战jQuery表单验证及jQuery自动完成提示插件
jQuery框架学习第一天:开始认识jQueryjQuery框架学习第二天:jQuery中万能的选择器jQuery框架学习第三天:如何管理jQuery包装集 jQuery框架学习第四天:使用jQuer ...
- jQuery自定义滚动条样式插件mCustomScrollbar
如果你构建一个很有特色和创意的网页,那么肯定希望定义网页中的滚动条样式,这方面的 jQuery 插件比较不错的,有两个:jScrollPane 和 mCustomScrollbar. 关于 jScro ...
- 转 jquery插件--241个jquery插件—jquery插件大全
241个jquery插件—jquery插件大全 jquery插件jqueryautocompleteajaxjavascriptcoldfusion jQuery由美国人John Resig创建,至今 ...
随机推荐
- thusc滚粗记
day0 下午到了北京,雾霾还是那么大.. 到宾馆报个到,和哥哥吃了一波饭,去不起西郊...只能去五道口了... 晚上和wyz队长见面,wyz队长好帅啊...没带手机拍照真是个错误TAT day1 今 ...
- [转载]Linux下tomcat的catalina.out文件过大,以及目录更改解决办法
原文链接:http://liyan0524.iteye.com/blog/1285644 方法1—分割流 使用cronolog工具切分Tomcat的catalina.out日志文件 cronolog一 ...
- Opencv混合高斯模型前景分离
#include "stdio.h" #include "string.h" #include "iostream" #include &q ...
- linux kernel 杂谈
首先介绍一下背景吧,工作三个星期了.复习了一波u-boot,跟了一下事件上报,搞了下平台设备,扣了一个内存检查代码. 想想生活是不是有点无聊.对啊,真的很无聊!!!! 无聊也没有办法啊,所以找点方法去 ...
- NET-SNMP开发——日志输出
NET-SNMP开发——日志输出 net-snmp的日志输出功能是很强大的,与日志输出相关函数声明在net-snmp-5.7.3\include\net-snmp\library\snmp_loggi ...
- 如何给zencart安装image handler插件?
以下内容均为个人的工作总结,有错误的理解都很正常,所以提醒您,可以参考,但是由此造成的一切后果,本人概不负责. 1 去zencart官网下载一个插件包(注意版本是否匹配相应的zencart版本,我的是 ...
- PHP MVC 中的MODEL层
Model层,就是MVC模式中的数据处理层,用来进行数据和商业逻辑的装封 三.实现你的Mode层 Model层,就是MVC模式中的数据处理层,用来进行数据和商业逻辑的装封,进行他的设计的时候设计到三个 ...
- Hibernate 多对多关联映射, 中间表加查询条件
package com.coracle.yk.xpo.po.base; import java.util.Date; import java.util.HashSet; import java.uti ...
- n全排列输出和 n个数的组合(数字范围a~b)
n全排列输出: int WPermutation(int num, bool bRepeat) num表示num全排列 bRepeat标志是否产生重复元素的序列. int Permutation(in ...
- 【GoLang】golang 中可变参数的 定义、传递 示例
支持可变长参数列表的函数可以支持任意个传入参数,比如fmt.Println函数就是一个支持可变长参数列表的函数. package main import "fmt" // 这个函数 ...