jQuery Tools Validator 表单验证插件工具用法详解
来源:互联网 发布:淘宝卖家贷款什么条件 编辑:程序博客网 时间:2024/05/09 22:59
网页中经常需要用到表单验证功能,以往需要写大量的代码来验证表单字段,而jQuery Tools提供了一套方便的表单验证工具,熟悉之后可以节省大量的开发时间。
一、validator基本使用方法
jQuery Tools validator插件为input元素新增了几种类型:email、number、url,将自动按照电子邮件格式,整数格式和URL格式来验证input输入框,同时还支持max,min,pattern,required属性,这些都是HTML5标准的属性和类型,即使浏览器不支持HTML5,jQuery tools validator也会自动识别。
示例:定义简单验证规则
二、validator配置参数详解
属性
默认值
说明
effect
'default'
错误消息显示效果
errorClass
'invalid'
验证失败时给表单元素添加一个醒目的样式
errorInputEvent
'keyup'
当验证有错误(处于错误状态中),触发单项验证的事件名称,还可以使用change,blur 或 null
formEvent
'submit'
表单整体验证时机,将对所有项目进行一次验证
grouped
false
是否将多种错误合并显示.
inputEvent
null
正常状态下触发单项验证的事件名称,优先级低于errorInputEvent,也就是说当发生错误时,优先执行errorInputEvent而忽略本项,还可以使用change,blur 或 null
lang
'en'
错误信息语种
message
'<div/>
错误信息的外部元素
messageAttr
'data-message'
错误信息属性名称,如果给表单元素添加了此属性,则发生错误时显示此属性的值
messageClass
'error'
错误信息的CSS样式
offset
[0, 0]
错误信息显示位置的偏移量
position
'center right'
错误信息显示位置,默认在表单元素右侧,上下居中
singleError
false
是否每次只显示一个错误信息
speed
'normal
错误信息渐显速度
示例:初始化validator并传入配置参数
三、定义默认错误提示
以上代码定义了一系列语种名称为'cn'的默认错误提示信息。如果仅需要对某些单独的字段设置多语种版本,可以使用以下方法
四、自定义验证规则
五、使用服务端远程ajax验证
远程AJAX返回错误信息的话需要使用JSON格式,如下:
六、使用自定义效果显示/隐藏错误信息
七、Validator的API方法调用
方法
返回值类型
说明
checkValidity()
boolean
立即执行表单验证
destroy()
API
销毁 validator 实例.
getConf()
Object
返回当前 validator 实例的参数配置.
getForm()
jQuery
返回表单对象
getInputs()
jQuery
返回所有的input对象
invalidate(Object)
API
强制显示错误信息,参数为JSON格式。主要用于从服务端接收到远程验证的错误后进行显示.
reflow()
API
修正错误信息的显示位置,因为错误信息是以绝对定位的方式显示的,有时候表单位置发生改变会导致错误信息显示的位置不正确,调用此函数进行修正。
reset(jQuery)
API
重置"验证错误",如果参数为空,则重置所有字段;如果表单里有reset按钮,则会被自动添加这个功能。
使用方法:
一、validator基本使用方法
jQuery Tools validator插件为input元素新增了几种类型:email、number、url,将自动按照电子邮件格式,整数格式和URL格式来验证input输入框,同时还支持max,min,pattern,required属性,这些都是HTML5标准的属性和类型,即使浏览器不支持HTML5,jQuery tools validator也会自动识别。
示例:定义简单验证规则
$("input[name='email']").validator();
二、validator配置参数详解
effect
'default'
错误消息显示效果
errorClass
'invalid'
验证失败时给表单元素添加一个醒目的样式
errorInputEvent
'keyup'
当验证有错误(处于错误状态中),触发单项验证的事件名称,还可以使用change,blur 或 null
formEvent
'submit'
表单整体验证时机,将对所有项目进行一次验证
grouped
false
是否将多种错误合并显示.
inputEvent
null
正常状态下触发单项验证的事件名称,优先级低于errorInputEvent,也就是说当发生错误时,优先执行errorInputEvent而忽略本项,还可以使用change,blur 或 null
lang
'en'
错误信息语种
message
'<div/>
错误信息的外部元素
messageAttr
'da
错误信息属性名称,如果给表单元素添加了此属性,则发生错误时显示此属性的值
messageClass
'error'
错误信息的CSS样式
offset
[0, 0]
错误信息显示位置的偏移量
position
'center right'
错误信息显示位置,默认在表单元素右侧,上下居中
singleError
false
是否每次只显示一个错误信息
speed
'normal
错误信息渐显速度
示例:初始化validator并传入配置参数
$("form.vali").validator({
messageClass:"yellow",
position:"bottom left",
errorClass:"errorClass"
});
三、定义默认错误提示
$.tools.validator.localize("cn", {
':email' : '请输入电子邮件地址',
':number' : '请输入整数',
'[max]' : '做多可以输入$1个字符',
'[min]' : '请至少输入$1个字符',
'[required]' : '该项为必填项目!'
});
$("#myForm").validator({lang: 'cn'});
以上代码定义了一系列语种名称为'cn'的默认错误提示信息。如果仅需要对某些单独的字段设置多语种版本,可以使用以下方法
$.tools.validator.localizeFn("[type=time]", {
en: 'Please supply a valid time',
cn: '请输入正确的时间格式'
});
四、自定义验证规则
//简单用法
$.tools.validator.fn("[type=time]", function(el, value) {
return /\d\d:\d\d/.test(value) ? true : "错误的事件格式";
});
//高级用法
$.tools.validator.fn(
"[type=range]",
"请输入介于 $1 至 $2 之间的值",
function(el, v) {
// 获取min属性和max属性的值
var min = el.attr("min"), max = el.attr("max"), value = parseFloat(v);
// 如果符合规则返回true,否则返回一个对象,可用于错误提示中替换占位符
return value >= min && value < max true min maxbr> }
);
//高级用法2
$.tools.validator.fn(
// 第一个参数用于检测是否适用本验证规则,如果匹配则返回true
function() {
return $(this).parents("form.register").length > 0;
// 第二个参数为验证函数
}, function(el, v) {
// 如果验证通过则返回true
return true;
}
);
//高级用法3
// 定义匹配函数
function myMatcher() {
return $(this).parents("form.register").length > 0;
}
// 作用对象
myMatcher.key = "register-input";
// 使用指定的匹配函数
$.tools.validator.fn(myMatcher, "请填写正确的值", function(el, v) {
// 验证通过返回true
return true;
});
五、使用服务端远程ajax验证
// 初始化 validator 并自定义的表单提交事件处理办法
$("#myform").validator({ position: 'center right' }).submit(function(e) {
var form = $(this);
// 客户端验证已通过的情况下再使用远程验证
if (!e.isDefaultPrevented()) {
// 使用AJAX提交表单数据,你也可以使用post或其他方式提交表单
$.getJSON(form.attr("action") + "?" + form.serialize(), function(json) {
// 远程验证通过时返回true
if (json === true) {
form.load("success.php");//具体成功后怎么处理随你
} else {
// 远程验证失败. 使用 invalidate() 显示错误信息
form.data("validator").invalidate(json);
}
});
// 阻止表单提交事件冒泡,即表单事件到此处理完毕
e.preventDefault();
}
});
远程AJAX返回错误信息的话需要使用JSON格式,如下:
{
"zip": "You must live in northern Finland in order to proceed",
"total": "You gave us too much money! Please check"
}
六、使用自定义效果显示/隐藏错误信息
// 定义名称为wall的效果
$.tools.validator.addEffect("wall",
function(errors, event) {
// 显示方法
$.each(errors, function(index, error) {
// 获取表单对象
var input = error.input;
// 获取错误信息
var errors = error.messages;
//剩下的你自己想怎么处理就在这里写代码
});
}, function(inputs) {
// 隐藏方法,定义隐藏时的特效
}
);
七、Validator的API方法调用
checkValidity()
boolean
立即执行表单验证
destroy()
API
销毁 validator 实例.
getConf()
Object
返回当前 validator 实例的参数配置.
getForm()
jQuery
返回表单对象
getInputs()
jQuery
返回所有的input对象
invalidate(Object)
API
强制显示错误信息,参数为JSON格式。主要用于从服务端接收到远程验证的错误后进行显示.
reflow()
API
修正错误信息的显示位置,因为错误信息是以绝对定位的方式显示的,有时候表单位置发生改变会导致错误信息显示的位置不正确,调用此函数进行修正。
reset(jQuery)
API
重置"验证错误",如果参数为空,则重置所有字段;如果表单里有reset按钮,则会被自动添加这个功能。
使用方法:
$('#myform').data("validator").checkValidity();
0 0
- jQuery Tools Validator 表单验证插件工具用法详解
- jQuery Validator 表单验证插件
- jQuery表单验证插件Validator的使用方法
- jQuery 表单验证插件jQuery Validation Engine用法详解
- jQuery 表单验证插件,jQuery Validation Engine用法详解
- jQuery 表单验证插件jQuery Validation Engine用法详解
- 表单验证 jquery.validator 和 jquery.validate 的用法
- jQuery Form Validator表单验证
- JQuery Validate插件----表单验证工具
- jQuery formValidator表单验证插件(详解)
- jQuery表单验证插件 Validation详解
- jQuery.validator 验证规则详解
- jQuery.validator 验证规则详解
- jQuery智能表单验证 nice Validator
- Jquery表单插件ajaxForm用法详解
- Jquery表单插件ajaxForm用法详解
- Jquery表单插件ajaxForm用法详解
- Jquery表单插件ajaxForm用法详解
- 修改UCenter用户名长度限制的方法
- Centos 6.3安装Subversion搭建SVN服务器 笔记
- UCenter、UChome增加邮箱地址登录功能
- iframe框架高度自适应
- PHP的日期操作 增加/减少 很具参考价值
- jQuery Tools Validator 表单验证插件工具用法详解
- CSS控制表格显示效果,可能有你还不知道的方法哦
- jQuery Tools DateInput使用详解
- ThinkPHP在IIS下配置ISAPI伪静态去掉index.php
- JS验证手机号码和邮箱地址
- 使用纯CSS显示气泡提示,表单验证时好用
- 精简你的jQuery
- 注册表修改屏保时间(regedit)
- javac写的简单的人脸识别知识点
原创粉丝点击
热门IT博客
热门问题
老师的惩罚
人脸识别
我在镇武司摸鱼那些年
重生之率土为王
我在大康的咸鱼生活
盘龙之生命进化
天生仙种
凡人之先天五行
春回大明朝
姑娘不必设防,我是瞎子
车船税滞纳金怎么算
增值税滞纳金怎么作分录
信用卡逾期滞纳金怎么算
印花税滞纳金怎么算
税务滞纳金会计分录
房产税滞纳金会计分录
信用卡利息和滞纳金
拖欠物业费有滞纳金吗
交强险过期有滞纳金吗
企业所得税的滞纳金
土地使用税的滞纳金
2018一次补缴15年社保滞纳金
滟滪
沈阳龙湖滟澜山
滟澜春天
两个洞越开越大灌满
房子满两年怎么算
二手房不满两年
满两年和满五年的区别
满两年二手房税费
房屋满两年怎么算
房产满两年怎么算
房子不满两年交多少税
房产证未满两年过户问题
房子满两年过户需要交的费用
满两年的二手房税交多少
不满两年的二手房交易税费
二手房没满两年要交什么税
二手房未满两年税费怎么算出
没满两年的二手房税
千万不要买没满两年的房子
宁小满霍时深第4章
宁小满霍时深老婆大人你好乖
勇者积分集满时再次赢
等到满山红叶时
名满一时
临时工干满五年必须转正
房子满五年从什么时间算起
二手房不满五年的税费多少
满五年的房子过户要交多少税
廉租房满五年归自己吗