一、运用

默认校验规则

()、required:true               必输字段
()、remote:"remote-valid.jsp" 使用ajax方法调用remote-valid.jsp验证输入值
()、email:true 必须输入正确格式的电子邮件
()、url:true 必须输入正确格式的网址
()、date:true 必须输入正确格式的日期,日期校验ie6出错,慎用
()、dateISO:true 必须输入正确格式的日期(ISO),例如:--,// 只验证格式,不验证有效性
()、number:true 必须输入合法的数字(负数,小数)
()、digits:true 必须输入整数
()、creditcard:true 必须输入合法的信用卡号
()、equalTo:"#password" 输入值必须和#password相同
()、accept: 输入拥有合法后缀名的字符串(上传文件的后缀)
()、maxlength: 输入长度最多是5的字符串(汉字算一个字符)
()、minlength: 输入长度最小是10的字符串(汉字算一个字符)
()、rangelength:[,] 输入长度必须介于 和 之间的字符串")(汉字算一个字符)
()、range:[,] 输入值必须介于 和 之间
()、max: 输入值不能大于5
()、min: 输入值不能小于10

原文:http://www.cnblogs.com/linjiqin/p/3431835.html(推荐-完整)

 异步验证

remote:URL
使用ajax方式进行验证,默认会提交当前验证的值到远程地址,如果需要提交其他的值,可以使用data选项

远程地址只能输出"true"或"false",不能有其它输出。

示例一:
remote: "check-email.php"
示例二:
remote: {
url: "check-email.php", //后台处理程序
type: "post", //数据发送方式
dataType: "json", //接受数据格式
data: { //要传递的数据
username: function() {
return $("#username").val();
}
}
}

MVC 后台

[HttpPost]
public ActionResult HasAccount(string account)
{
return Json(!AccountRule.Instance.HasAccount(account));//如果存在账号,返回false,不存在返回true
}

二、扩展

添加一个jquery.validate.ext.js

/*
* 验证扩展
*
*/
// jQuery.validator增加时间验证
jQuery.validator.addMethod("timeISO", function (value, element) {
if (this.optional(element)) return true;
try {
var strArray = value.split(" ");
var strDate = strArray[0].split("-");
var strTime = strArray[1].split(":");
var a = new Date(strDate[0], (strDate[1] - parseInt(1)), strDate[2], strTime[0], strTime[1], strTime[2]);
return a.getFullYear() > 0 && a.getMonth() > 0 && a.getDay() > 0;
} catch (e) { }
return false;
}, "请输入正确的时间!"); // jQuery.validator增加账号验证
jQuery.validator.addMethod("vaccount", function (value, element) {
return this.optional(element) || (/^\w+$/.test(value));
}, "请输入英文、数字、下划线");
/*
*
*验证消息中文提示
*
*/
$.extend($.validator.messages, {
required: "必选字段",
remote: $.format("该账户已存在!"),
email: "请输入正确格式的电子邮件",
url: "请输入正确的网址",
date: "请输入正确的日期",
dateISO: "请输入正确的日期(ISO)",
number: "请输入正确的数字",
digits: "只能输入整数",
creditcard: "请输入正确的信用卡号",
equalTo: "请再次输入相同的值",
accept: "请输入拥有合法后缀名的字符串",
maxlength: $.validator.format("字符长度最多{0}个"),
minlength: $.validator.format("字符长度最少{0}个"),
rangelength: $.validator.format("字符长度为{0}-{1}之间"),
range: $.validator.format("输入值为于{0}-{1}之间"),
max: $.validator.format("请输入一个最大为{0}的值"),
min: $.validator.format("请输入一个最小为{0}的值")
});

三、添加移除验证

在项目中,经常碰到表单有些字段需要根据条件显示隐藏,这时手动添加移除验证就派上用场了。

$("#IDName").rules("remove");
$("#IDName").rules("add", { required: true, messages: { required: "请输入标题" } });

jquery.validate运用和扩展的更多相关文章

  1. jquery validate验证插件扩展方法(转)

    /***************************************************************** jQuery Validate扩展验证方法 (linjq) *** ...

  2. aspx中的表单验证 jquery.validate.js 的使用 以及 jquery.validate相关扩展验证(Jquery表单提交验证插件)

    这一期我们先讲在aspx中使用 jquery.validate插件进行表单的验证, 关于MVC中使用 validate我们在下一期中再讲     上面是效果,下面来说使用步骤 jQuery.Valid ...

  3. jquery.validate的效验方式

    jQuery校验官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation 原文地址:http://www.cnblogs.c ...

  4. jquery.validate.unobtrusive

    ASP.NET MVC Unobtrusive JavaScript 实现 onfocusout 验证, onfocusin 清除错误 在 ASP.NET MVC 中启用 Unobtrusive Ja ...

  5. 封装jQuery Validate扩展验证方法

    一.封装自定义验证方法-validate-methods.js /***************************************************************** j ...

  6. jquery validate扩展验证方法

    /***************************************************************** jQuery Validate扩展验证方法 (linjq) *** ...

  7. 扩展jquery.validate自定义验证,自定义提示,本地化

    <!DOCTYPE html> <html> <head> <meta name="viewport" content="wid ...

  8. jQuery Validate扩展验证方法 (zhangxiaobin)

    /***************************************************************** jQuery Validate扩展验证方法 (zhangxiaob ...

  9. 在一个验证form的实例中扩展jQuery.validate

    需求很简单,直接上图: 要验证表单上的3个input输入框的格式,要求如下: 主关键词情形1: 浙江 杭州 温州 主关键词情形2: 浙江|江苏|上海,但是不能用 空格和 | 混合用,也就是情形1和2不 ...

随机推荐

  1. SQL如何取得一个面的中心点

    ) .sdo_point.x x, sdo_geom.sdo_centroid(t.shape, ) .sdo_point.y y from gd_zy_region t SQL如何取得一个面的中心点 ...

  2. Android Studio 项目代码全部消失--出现原因及解决方法

    出现原因,自己把项目地址父层目录文件名修改了,导致原来打开的项目位置不对,代码全部消失.这样就只要关闭项目,打开一下你修改路径下的项目即可.因为原来的项目还在原来的路径下寻找,但是原来的路径发生了改变

  3. 优于CoreData的Realm数据库基础教程

    Realm 是一个跨平台的移动数据库引擎,于 2014 年 7 月发布,准确来说,它是专门为移动应用所设计的数据持久化解决方案之一. Realm 可以轻松地移植到您的项目当中,并且绝大部分常用的功能( ...

  4. Swift中的类和结构体的相同点与不同点

     相同点: 1.都是有内部变量和函数 2.都可以有内部下标方式去取属性 3.都可以有初始化函数 4.都可以用协议   不同点: 1.类有继承 2.类可以多重引用 3.类有析构  

  5. vs(vistual studio)项目文件名字重复问题

    今天遇到一情况,比较神奇,vs项目,我更新SVN的时候,发现竟然出现文件名字重复的现象. [caption id="" align="alignnone" wi ...

  6. sublime text2 汉化

    1.下载Sublime-Text-2中文包.zip 链接:http://pan.baidu.com/s/1mgYRW9q 密码:8ks6 2.将 Sublime-Text-2中文包.zip 解压,并将 ...

  7. Scrum不是万能药,要在时机成熟时推行

    敏捷很火热,大家都在谈敏捷:但不是所有团队都适合敏捷! 需要等待时机,时机成熟了,才推! 什么时候算时机成熟呢? 我们的经验是需要两点: 一.团队有三名或以上的研发工程师 : 二. 团队内有一名合适的 ...

  8. centos性能监控系列二:Collectl初解

    对于一个 Linux 系统管理员来说确保自己管理的系统处于一个良好的状态是其首要责任. Linux 系统管理员可以找到有很多工具来帮助自己监控和显示系统中的进程,例如 top 和 htop 今天介绍一 ...

  9. 烂泥:【解决】ubuntu提示ilanni不在sudoers文件中错误

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 今天在Ubuntu系统中新建一个用户ilanni,添加完毕后.在执行有关sudo的命令时,提示如下的错误信息:ilanni 不在 sudoers 文件中 ...

  10. C语言关键字详解

    相对于其他语言来说,C语言的关键字算是少的了.在C98中关键子总共只有32个,我们来分析一下每个关键字在C语言中它独特的作用. 1.关于数据类型的关键字 (1) char :声明字符型变量或函数  ( ...