官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation

Validate手册: http://www.cnblogs.com/chutianshu1981/p/3602184.html

效果图:

引入库:

<script type="text/javascript" src="__PUBLIC__/Js/jquery.js"></script>
<script type="text/javascript" src="__PUBLIC__/Js/jquery-validate.js"></script>
<script type="text/javascript" src="__PUBLIC__/Js/register.js"></script>

表单:

<form action="" method='post' name='regis'>
<p>
<label for="account">登录账号:</label>
<input type="text" name='account' id="account" autocomplete="off" />
</p>
<p>
<label for="pwd">登录密码:</label>
<input type="password" name='pwd' id="pwd"/>
</p>
<p>
<label for="pwded">确认密码:</label>
<input type="password" name='pwded' id='pwded'/>
</p>
<p>
<label for="uname">昵 称:</label>
<input type="text" name='uname' id="uname" />
</p>
<p>
<label for="verify">验证码:</label>
<input type="text" name="verify" id="verify" />
<img src="#" alt="验证码图片" class="verify" id="verify-img" title="点击更换" />
</p>
<p>
<input type="submit" value='立即注册' id='regis'/>
</p>
</form>

register.js文件:

$(function () {

    //jQuery Validate表单验证

    /**
* 添加验证方法: ok
* 以字母开头,5-17 位字母、数字、下划线"_"
*/
jQuery.validator.addMethod("ok", function(value, element) {
var account = /^[a-zA-Z][\w]{4,16}$/;
return this.optional(element) || (account.test(value));
}, '以字母开头,5-17 位字母、数字、下划线"_"'); $('form[name="regis"]').validate({ // 验证规则
rules:{
account:{ //form表单中input[name='account']元素的验证规则
required: true, //必须字段,不能为空
ok: true, //启用自定义验证规则'ok'
remote: { //异步验证
url: checkAccountUrl, //后台处理程序
type: "post", //数据发送方式
dataType: "json", //接受数据格式
data: { //要传递的数据
account: function() {
return $("#account").val().trim();
}
}
}
},
pwd:{
required: true,
ok: true,
},
pwded:{
required: true,
equalTo: '#pwd'
},
uname:{
required: true,
rangelength: [2, 10],
remote: {
url: checkUnameUrl,
type: "post",
dataType: "json",
data: {
uname: function () {
return $("#uname").val().trim();
}
}
}
},
verify:{
required: true,
remote: {
url: checkVerifyUrl,
type: 'post',
dataType: 'json',
data: {
verify: function () {
return $('#verify').val().trim();
}
}
}
}
}, // 提示消息
messages:{
account:{ //form表单中input[name='account']元素的提示信息
required: '账号不能为空', // 输入为空时提示
remote: '账号已存在' // 异步获得json数据为'false'时提示,也就是后台验证失败
},
pwd:{
required: '密码不能为空',
},
pwded:{
required: '请确认密码',
equalTo: '两次密码不一致'
},
uname:{
required: '请填写您的昵称',
rangelength: '昵称必须在{0}-{1}个字之间',
remote: '昵称已存在'
},
verify:{
required: '请输入验证码',
remote: '验证码有误'
}
}, // 错误标签元素
errorElement: 'span', // 错误提示位置
errorPlacement: function (error, element) { // error是错误信息的提示元素,element是当前input域
error.appendTo(element.parent()).prev('.success').remove(); //追加提示元素,去掉之前的成功元素
}, // 验证通过
success: function (span) { // span 是错误的提示元素
span.removeClass('error').addClass('success').siblings('.success').remove(); //追加成功样式,去掉错误样式和重复的成功样式
}
}); })

errorElement 的CSS样式:

input.error{ /*...*/ }     /* 输入框  的错误样式 */
input.valid{ /*...*/ } /* 输入框 的成功样式 */
span.error{ /*...*/ } /* 提示元素的错误样式 */
span.success{ /*...*/ } /* 提示元素的成功样式 */

 

jQuery Validate插件 验证实例的更多相关文章

  1. jQuery Validate 插件验证,,返回不同信息(json remote)自定义

    问题 申请账号需要确认该账号是存在 jquery.validate.js中的remote Jquery Ajax获取后台返回的Json数据后,添加自定义校验 解题思路:输入的登陆信息远程验证是否该账号 ...

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

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

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

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

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

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

  5. jQuery Validate 插件

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

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

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

  7. jquery validate 插件使用小结

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

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

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

  9. JQuery Validate插件与实现

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

随机推荐

  1. 反向传播算法 Backpropagation Algorithm

    假设我们有一个固定样本集,它包含 个样例.我们可以用批量梯度下降法来求解神经网络.具体来讲,对于单个样例(x,y),其代价函数为:这是一个(二分之一的)方差代价函数.给定一个包含 个样例的数据集,我们 ...

  2. 【bzoj1672】[USACO2005 Dec]Cleaning Shifts 清理牛棚 dp/线段树

    题目描述 Farmer John's cows, pampered since birth, have reached new heights of fastidiousness. They now ...

  3. hdu 1690 Bus System (最短路径)

    Bus System Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  4. hadoop 使用map将SequenFile里的小文件解压出来

    上例中将HDFS里小文件通过mapper压缩到一个文件中,本例将这些小文件解压出来. mapreduce可以按SequenceFile的key进行分片. 1.mapper public class M ...

  5. 【题解】Atcoder ARC#90 E-Avoiding Collision

    自己做出来固然开心,但是越发感觉到自己写题的确是很慢很慢了……往往有很多的细节反反复复的考虑才能确定,还要加油呀~ 这道题目的突破口在于正难则反.直接求有多少不相交的不好求,我们转而求出所有相交的.我 ...

  6. ContestHunter暑假欢乐赛 SRM 08

    rating再次跳水www A题贴HR题解!HR智商流选手太强啦!CYC也好强%%%发现了len>10大概率是Y B题 dp+bit优化,据LLQ大爷说splay也可以优化,都好强啊.. C题跑 ...

  7. CF993E Nikita and Order Statistics

    小于x的赋值为1,否则为0 区间等于k的个数 求0~n连续的n+1个k? N<=1e5? FFT! 考虑卷积建模:用下标相加实现转移到位,数值相乘类比乘法原理! 法一: 分治,然后FFT没了 法 ...

  8. SELECT LAST_INSERT_ID() 的使用和注意事项

    SELECT LAST_INSERT_ID() 的使用和注意事项 尊重个人劳动成果,转载请注明出处: http://blog.csdn.net/czd3355/article/details/7130 ...

  9. IAR ------ 扩展关键字__weak

    __weak作用:允许多个同名函数同时存在,但是最多只有一个没有__weak修饰.如果有non-weak函数(没__weak修饰),则此函数被使用,否则从__weak修饰的函数中选择其中一个. 下图来 ...

  10. MySQL5.5安装图解

    MySQL5.5安装图解... ====================== 第一部分:去官网下载MySQL安装包... MySQL下载官网:https://dev.mysql.com/downloa ...