jValidate 基于jQuery的表单验证插件


网上的各类表单验证插件的验证规则都是写在脚本里的,但我的插件的验证规则却是写在表单元素的属性里的。如下面的例子:

复制代码 代码如下:

<input name="name" type="text" id="name" size="30" jvpattern="^.+$" jverrortip="请输入正确的姓名." jvtipid="spt_name" jvmethod="checkname" />
<span id="spt_name" class="normaltips" jverrorclass="errortips" jvcorrectclass="correcttips"></span>

注意看上面代码中以“jv“开头的各种属性名,这些都是表单验证插件需要用的属性值。其中各属性代表的意思请阅读以下表:

1、form表格控件元素可使用的属性

属性名 说明
jvpattern 用来验证控件值是否正确的正则表达式。(可不定义此属性)
jvcompareid 需要与当前控件进行值相等比较的其它控件id。(可不定义此属性)
jvrequired 表明当前控件值是否是必须的,也即是否允许当前控件值为空。如不定义此属性则默认为不可空,如果值为false或0则允许为空。(可不定义此属性)
jvmethod

定义需要进行额外验证的方法。(可不定义此属性)

此属性值如果定义,则不需要输写“括号”,并且函数原型为:

xx function(item){

//代码

//true表示验证成功,false表示验证失败。

return true/false;

//或者带错误消息的返回

return {result:true/false, message:'错误消息'};

}

其中item参数是当前控件对象的jQuery实例。

jvtipid

显示验证提示信息的控件id。(可不定义此属性)

注:如果不定义此属性,并且未定义onerror或oncorrect函数则默认为alert提示

jverrortip 当验证失败时要显示的提示信息。(可不定义此属性)
jvcorrecttip 当验证成功时要显示的提示信息。(可不定义此属性)
jvfocuson 当验证失败后是否需要将光标移到控件上。(可不定义此属性)

控件上必须定义:jvpattern、jvmethod、jvcompareid 三者之中的一个或多个,否则插件将不对对应的控件进行验证。

2、tip提示控件元素可使用的属性:tip提示控件即是某个表单控件jvtipid指定的控件。

属性名 说明
jvnormalclass 正常情况下显示提示信息时采用的css样式的classname。(可不定义此属性)
jvcorrectclass 验证成功后显示提示信息时采用的css样式的classname。(可不定义此属性)
jverrorclass 验证失败后显示提示信息时采用的css样式的classname。(可不定义此属性)

当控件规则设置好后就可以直接激活调用jValidate,以便当表单进行submit提交前,进行验证检查。

示例:

$('form').jValidate();

或者带参数的调用:

$('form').jValidate({
blurvalidate : true,
isbubble : false,
onerror : function(item,form){
$.jMessageBox.show('错误', item.attr('jverrortip'));
}
});

可设置的参数请阅读下表:

参数名 说明
isbubble

是否允许“冒泡”,也即是否允许逐个检查各控件值,如果值为true,则会逐一检查验证所有已设置验证规则的控件;如果值为false则当有一个控件值验证失败(不符合条件)后,将退出后续控件的检查。默认值为false

注:如果提示信息是以弹出窗口方式显示的,建议将此值设置为false,以免一下子弹出较多提示,引起用户反感。

blurvalidate 设置当个个控件失去焦点后是否需要即时检查验证。默认值为false。
emptytip 是否允许空提示。也即是当没有提示信息可显示时,是否还允许提示控件改变css类。默认值为false
oncorrect

当控件值验证成功时调用处理的方法,如果未定义则采用默认行为。函数原型:

function(item, form){

//代码

}

其中参数item: 表示当前控件的jQuery实例; form : 表示控件所在的表单实例

onerror

当控件值验证失败时调用处理的方法,如果未定义则采用默认行为。函数原型:

function(item, form){

//代码

}

其中参数item: 表示当前控件的jQuery实例; form : 表示控件所在的表单实例

示例截图:


源码下载 压缩包附带jMessageBox示例
http://www.phpstudy.net/jiaoben/23094.html



相关阅读:
ASP.NET与MySQL数据库简明图示入门教程
php ob_flush,flush在ie中缓冲无效的解决方法
UBUNTU为NetBook设计操作系统
跨浏览器的CSS3产生器:CSS3 please
php中文件上传的安全问题
实用的JS表单验证提示效果
linux下使用ssh管理VPS的注意事项小结
设置win7资源管理器启动时的默认位置
Oracle 导入dmp文件最安全步骤
php通用防注入程序 推荐
RESPONSE.WRITE和&lt;%=%的区别
PHP程序开发范例学习之表单 获取文本框的值
PHP array操作10个小技巧分享
FreeBSD安装后的网卡配置
快速导航
PHP MySQL HTML CSS JavaScript MSSQL AJAX .NET JSP Linux Mac ASP 服务器 SQL jQuery C# C++ java Android IOS oracle MongoDB SQLite wamp 交通频道 作文范文 南靖-抚州 九江-泰和 涟源-镇远 耒阳-铜仁 黔江-佛山 广水-洛阳 芦台-上板城 魏杖子-杨树湾 德惠-汤原 安图西-山海关 鹰潭-和平 讷尔克气-大乌苏 松江河-五道沟 高邑-达州 湘乡-永安 漯河西-哈尔滨西 嘉善-镇江 青州市-青岛 邵阳-江永 海安县-重庆北 滕州东-苍南 永康南-郑州东 余姚北-深圳坪山 同江-丰乐镇 驻马店-瓦房店 正定-宣汉 新化-贵溪 云梦-咸阳 弋阳-西平 通化-东光 德惠-晨明 冯屯-伊拉哈 清河城-横峰 赣州-宣城 利川-杭州 合肥-济南 文水-呼和浩特东 潍坊-新干 兖州-乌鲁木齐 朝阳镇-磐石 草河口-长甸 九台-辽源 北京西-新化 台前-古田 邵阳-松江 阳新-庐山 上海虹桥-永州 南平北-铜仁南 山阴-阜阳 东胜西-沙城 牙克石-碾子山 郴州-拉萨 蓬安-南阳 四平-济南 延吉-熊岳城 大徐屯-营北 嘉善南-余姚北 遂溪-娄底 当阳-安阳 昌图-公主岭 杨漩-普雄 西峡-青铜峡 上饶-上海虹桥 镇安-渠县 大杨树东-瓦拉干 庆安-齐齐哈尔 融安-蔡家坡 下坑子-贺日斯台 齐齐哈尔-化德 安康-赶水 广州北-永州 韶关东-黔江 高山子-石山 进贤-泰和 沙湾县-乌鲁木齐南 洛阳东-嘉峰 新化-葫芦岛 小西庄-浮图峪 昆山-清河城 海城西-通远堡西 急~~急~~深圳宝安区哪里有车到韶关南雄的
沈阳到长沙票价钱数?长沙到湘潭票价钱数?
经常玩赛车(带仿真方向盘)的游戏对驾驶真车有很大好处么
从柳州到深圳龙岗怎么走
从广州列车站到中山市古镇怎么走,要多少钱
上海动物园到南汇祝桥镇怎么坐车
请问一下在列车站地下广场开个台球厅怎么样?
列车火车站到武汉纺织大学怎么走
从首都机场坐几号线能到达 西单民航大厦 最主要的是需要多长
大家帮忙一下,请问从北戴河火车列车站到昌黎县这条205公路线,离
如果一月初的时候,从广州花都到湛江海田大概要多少车费从
淄博到上海专线,淄博物流公司有吗
安阳租一辆奔驰当花车一天要多少钱
柳州到北京的列车火车票怎么预订?
青岛311路公交车 到达时间
成都到深圳的火车列车路线是否正常运行
北京列车火车站到保福桥路公交车次
请问从棠东到水荫直街的祥云楼怎么走,谢谢
有台州到郑州的列车吗
甘肃有哪些风景秀丽的适合旅游的地方?
09届毕业生出去找工作可以半价买火车列车票吗
成都到重庆市綦江县坐客车需要多久,有早上从綦江到成都的客车吗
广东东站到荆门的列车票多少
从连云港到沈阳最近的列车路线怎么走
从洛阳火车列车站到洛阳国安公司(中州中路)坐几路公交车
泉州众爱门, 专业销售鞋套机... 店铺在新门街392号(芳草园对...
成都市红照壁到五桂桥怎么走急,在线等
梦见腿麻了
几个大学生从杭州到黄山去自助游,求几条实惠点的路线,谢啦
K702车次是什么样的火车,坐这个车从南昌到衡水要多长时间

Copyright © 2016 phpStudy |