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 服务器 CMS SQL jQuery C# C++ java Android IOS oracle MongoDB PostgreSQL SQLite 交通频道 G4722 G1875 G215 G569 G421 G6733 G7577 G8906 G1235 G4916 G7291 G1953 G245 G662 G1570 G6285 G719 G1836 G1346 G4781 G4908 G289 G6781 G9290 G7358 G1928 G1815 G325 G132 G4901 G6012 G6290 G7131 G5367 G184 G151 G5303 G1136 G6481 G7028 G575 G1744 G7660 G7693 G2344 G4937 G1234 G1814 G6252 G1492 G253 G2926 G883 G9275 G1231 G556 G241 G1306 G7646 G8103 G600 G1858 G9678 G6160 G7156 G825 G1125 G7249 G1809 G1350 G432 G9466 G7067 G785 G6404 G4663 G7008 G150 G823 G1514 G7529 G1201 G2353 G205 G7629 G9409 G6147 G677 G390 G8016 G9239 G456 G828 G8045 G491 G7145 G397 G7012 G1021 G6482 G2322 G7264 G1301 G9247 G96 G1294 G7133 G4824 G7005 G1653 G5307 G1213 G822 G4837 G1422 G411 G6227 G1571 G359 G1882 G6074 G7678 G21 G7077 G1272 G8918 G9645 G461 G1254 G1846 G8021 G7303 G1104 G76 G82 G621 G218 G8533 G2341 G8543 G555 G8013 G4802 G1364 G1153 G1342 G1861 G8905 G590 G4780 G668 G9261 G1304 G1638 G1395 G2914 G8003 G7158 G1833 G1873 G8128 G1856 G1841 G8709 G7346 G4612 G2103 G835 G8712 G381 G7240 G8932 G507 G29 G4054 G6273 G6752 G426 G211 G9473 G7119 G2333 G1567 G6153 G360 G4011 G5301 G7648 G8010 G8015 G6706 G614 G423 G8557 G9465 G72 G6018 G8901 G7030 G123

丹东 云霄 辽中 德阳 克拉玛依 惠山 招远 昭通 铁岭西 延吉西 军粮城北 定西 晋中 许昌东 郫县 诏安 七台河 高碑店东 南昌 延安 敦化 铜陵北 嵩明 鲘门 扬中 龙里北 舟山 洛阳 运城北 鞍山 西昌 邵阳北 绍兴 白山 三明 肇东 陵水 衡山西 嘉善 宜都 泰兴 泉州 汉口 东胜西 昌图西 锦州南 安阳东 怀化 黄南 亚龙湾 扬州 温州 南翔北 福安 金山北 永川东 安达 曲阜东 郑州西 天门 绍兴北 涪陵北 阳泉北 三亚 葫芦岛北 徐州 阳江 辽源 新泰 阿坝 孝感北 三穗 金寨 保山 高安 安阳 牟平 西双版纳 信阳 繁昌西 哈尔滨北 达州 新余 沈阳南 四平 扶余北 伊宁 郴州西 济源 水家湖 民权北 福鼎 如皋 奉化 全州南 安庆 太姥山 武汉 乐清 皮口 武昌 茂名 邯郸 资阳 马鞍山 三水南 泰安 包头东 衡阳东 南丰 仙桃西 安吉 罗源 山海关 平湖 惠州 资阳北 淄博 丹阳 莱州 巴东 关岭 盐城 锦州 格尔木 益阳 大英东 吉林 湛江 临安 襄汾西 渑池南 当涂东 辽阳 徐水 贺州 韶关 光明城 邯郸东 普安县 南江口 铜川 五龙背东 张家港 烟台南 萍乡北 青堆 长乐 江门 台州 衡水 湘潭北 闽清北 高邑西 盖州西 石柱县 潮汕 肇庆 泰康 邵东 湖州 余姚 平凉 宜宾 增城 沧州 都匀 防城港 鹰潭北 海东西 福田 余姚北 岳池 广州北 南安 蓬莱 瓦房店西 李石寨 葛店南 海安 无锡东 上饶 通辽 四会 桂林西 砀山南 兰州 滨海 龙口 绅坊 莱西 石林西 深圳 大连北 成都 上海西 孝感 杏树屯 德清 嘉兴

Copyright © 2016 phpStudy |