一、用前必备
官方网站:http://bassistance.de/jquery-plugins/jquery-plugin-validation/
API: http://jquery.bassistance.de/api-browser/plugins.html
当前版本:1.8.1

需要JQuery版本:1.3.2+, 兼容 1.3.2
<script src="js/jquery.js" type="text/javascript"></script>
<script src="js/jquery.validate.js" type="text/javascript"></script>

<script src="js/jquery.metadata.js" type="text/javascript"></script>

二、默认校验规则
(1)required:true              必输字段
(2)remote:"check.php"          使用ajax方法调用check.php验证输入值
(3)email:true                  必须输入正确格式的电子邮件
(4)url:true                    必须输入正确格式的网址
(5)date:true                  必须输入正确格式的日期
(6)dateISO:true                必须输入正确格式的日期(ISO),例如:2009-06-23,1998/01/22 只验证格式,不验证有效性
(7)number:true                必须输入合法的数字(负数,小数)
(8)digits:true                必须输入整数
(9)creditcard:                必须输入合法的信用卡号
(10)equalTo:"#field"          输入值必须和#field相同
(11)accept:                    输入拥有合法后缀名的字符串(上传文件的后缀)
(12)maxlength:5                输入长度最多是5的字符串(汉字算一个字符)
(13)minlength:10              输入长度最小是10的字符串(汉字算一个字符)
(14)rangelength:[5,10]        输入长度必须介于 5 和 10 之间的字符串")(汉字算一个字符)
(15)range:[5,10]              输入值必须介于 5 和 10 之间
(16)max:5                      输入值不能大于5
(17)min:10                    输入值不能小于10

三、默认的提示
messages: {
    required: "This field is required.",
    remote: "Please fix this field.",
    email: "Please enter a valid email address.",
    url: "Please enter a valid URL.",
    date: "Please enter a valid date.",
    dateISO: "Please enter a valid date (ISO).",
    dateDE: "Bitte geben Sie ein g眉ltiges Datum ein.",
    number: "Please enter a valid number.",
    numberDE: "Bitte geben Sie eine Nummer ein.",
    digits: "Please enter only digits",
    creditcard: "Please enter a valid credit card number.",
    equalTo: "Please enter the same value again.",
    accept: "Please enter a value with a valid extension.",
    maxlength: $.validator.format("Please enter no more than {0} characters."),
    minlength: $.validator.format("Please enter at least {0} characters."),
    rangelength: $.validator.format("Please enter a value between {0} and {1} characters long."),
    range: $.validator.format("Please enter a value between {0} and {1}."),
    max: $.validator.format("Please enter a value less than or equal to {0}."),
    min: $.validator.format("Please enter a value greater than or equal to {0}.")
}

可以直接修改默认的信息

使用方式一(直接在文本框的class中写验证规则)

<script type="text/javascript">
$(document).ready(function() {
$("#commentForm").validate();
});
</script>

html 页面代码:

直接在输入的文本框中写class="required email"验证规则,还有josn数据格式的class="{required:true,email:true}"

<form class="cmxform" id="commentForm" method="post" action="">
<fieldset>
<legend>请输入姓名和邮件地址!</legend>
<p>
<label for="cname">姓名 (必填,至少两个字符)</label>
<input id="cname" name="name" class="required" minlength="2" />
</p>
<p>
<label for="cemail">邮箱 (必填)</label>
<input id="cemail" name="email" class="{required:true,email:true}" />
</p>
<p>
<label for="curl">网址 (可选)</label>
<input id="curl" name="url" class="url" value="" />
</p>
<p>
<label for="ccomment">留言 (必填)</label>
<textarea id="ccomment" name="comment" class="required"></textarea>
</p>
<p>
<input class="submit" type="submit" value="Submit"/>
</p>
</fieldset>
</form>

使用方式二,自定义rules验证规则,测试的页面代码是上面的

<script type="text/javascript">
$(document).ready(function() {
//$("#commentForm").validate();
$("#commentForm").validate({
rules:{
cname:{
required:true,
rangelength:[2,10]
}
}
//自定义验证信息
message:{
cname:{
required:"用户名不能为空",
rangelength:$.validator.format("输入的范围在 {0}-{1} 之间的字符.")
}
} })
});
</script>

最后为了提高用户体验,

样式应该这样写:

<style type="text/css">
/************jQuery.Validate插件样式开始********************/
label.error
{
background: url(images/error.png) no-repeat 0px 0px;
color: Red;
padding-left: 20px;
}
label.success
{
background:url("images/checked.gif") no-repeat 0px 0px;
}
input.error
{
border: dashed 1px red;
}
/************jQuery.Validate插件样式结束********************/
</style>

注意:其中的label是默认的装载提示信息的文本框,其中的error也是默认的样式,而success是添加的

脚本代码应该改为:

<form class="cmxform" id="commentForm" method="post" action="">
<fieldset>
<legend>请输入姓名和邮件地址!</legend>
<p>
<label for="cname">姓名 (必填,至少两个字符)</label>
<input id="cname" name="name" class="required" minlength="2" />
</p>
<p>
<label for="cemail">邮箱 (必填)</label>
<input id="cemail" name="email" class="required email" />
</p>
<p>
<label for="curl">网址 (可选)</label>
<input id="curl" name="url" class="url" value="" />
</p>
<p>
<label for="ccomment">留言 (必填)</label>
<textarea id="ccomment" name="comment" class="required"></textarea>
</p>
<p>
<input class="submit" type="submit" value="Submit"/>
</p>
</fieldset>
</form>

测试的源码提供下载(和博客的有点不一样,因为我是写给自己备忘的,不过是源码中提炼出来的):/Files/Jaylong/表单验证.zip

Jquery.validate表单验证的更多相关文章

  1. ASP.NET MVC Jquery Validate 表单验证的多种方式

    在我们日常开发过程中,前端的表单验证很重要,如果这块处理不当,会出现很多bug .但是如果处理的好,不仅bug会很少,用户体验也会得到很大的提升.在开发过程中我们可以不借助 JS 库,自己去手写 JS ...

  2. [转]ASP.NET MVC Jquery Validate 表单验证的多种方式介绍

    在我们日常开发过程中,前端的表单验证很重要,如果这块处理不当,会出现很多bug .但是如果处理的好,不仅bug会很少,用户体验也会得到很大的提升.在开发过程中我们可以不借助 JS 库,自己去手写 JS ...

  3. Jquery Validate 表单验证的多种方式

    ASP.NET MVC Jquery Validate 表单验证的多种方式 在我们日常开发过程中,前端的表单验证很重要,如果这块处理不当,会出现很多bug .但是如果处理的好,不仅bug会很少,用户体 ...

  4. jQuery Validate 表单验证 — 用户注册简单应用

    相信很多coder在表单验证这块都是自己写验证规则的,今天我们用jQuery Validate这款前端验证利器来写一个简单的应用. 可以先把我写的这个小demo运行试下,先睹为快.猛戳链接--> ...

  5. jquery validate表单验证插件-推荐

    1 表单验证的准备工作 在开启长篇大论之前,首先将表单验证的效果展示给大家.     1.点击表单项,显示帮助提示 2.鼠标离开表单项时,开始校验元素  3.鼠标离开后的正确.错误提示及鼠标移入时的帮 ...

  6. jquery validate表单验证插件

    1 表单验证的准备工作 在开启长篇大论之前,首先将表单验证的效果展示给大家.     1.点击表单项,显示帮助提示 2.鼠标离开表单项时,开始校验元素  3.鼠标离开后的正确.错误提示及鼠标移入时的帮 ...

  7. jQuery Validate 表单验证

    在做网页表单时时常需要在客户端对表单填写的数据进行验证一番才能提交,我们可以通过自己编写JavasScript代码来验证,但是有时数据量过多时就会有些难度了.基于jQuery的jquery.valid ...

  8. jQuery Validate 表单验证插件----自定义一个验证方法

    一.下载依赖包 网盘下载:https://yunpan.cn/cryvgGGAQ3DSW  访问密码 f224 二.引入依赖包 <script src="../../scripts/j ...

  9. jQuery Validate 表单验证插件----自定义校验结果样式

    一.下载依赖包 网盘下载:https://yunpan.cn/cryvgGGAQ3DSW  访问密码 f224 二.引入依赖包 <script src="../../scripts/j ...

  10. jQuery Validate 表单验证插件----通过name属性来关联字段来验证,改变默认的提示信息,将校验规则写到 js 代码中

    一.下载依赖包 网盘下载:https://yunpan.cn/cryvgGGAQ3DSW  访问密码 f224 二. 添加一个另外一个插件jquery.validate.messages_cn.js. ...

随机推荐

  1. javascript滚动栏响应鼠标滑轮的实现上下滚动事件

    实现鼠标滚动滚轮事件: <script type="text/javascript"><pre name="code" class=" ...

  2. Unity3d 导入图像尺寸失真解决方案

    导入到unity3d内的图像被默认长宽变换为满足2^n关系. 例如以下图,我有张图片名称为984plus598表示我尺寸为984*598.拷贝到unity3d中后的大小为1024*512 方法一: 在 ...

  3. oracle record is locked by another user

    这个问题的根源先说说:午后更改数据库表,保存更改后,却没有提交完整.突然,去什么地方调试,拔掉网线,然后插上网线,这个出现record is locked by another user错误.网上找原 ...

  4. Eclipse-----jrebel实现jetty热部署

    步骤1:下载jrebel将文件解压缩到任意文件夹 步骤2:配置jetty watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaGVrZXdhbmd6aQ==/f ...

  5. 用CSS3制作很特别的波浪形菜单

    原文:用CSS3制作很特别的波浪形菜单 网页菜单我们见过很多,各种炫酷的.实用的菜单比比皆是.昨天我看到一款很特别的CSS3菜单,它的外形是波浪形的,弯弯曲曲,结合背景,看上去还挺不错的,下面看下一效 ...

  6. 如何生成可变表头的excel(转)

    1.实现功能: 传入一个表头和数据,将数据导入到excel中. 为了便于项目的扩展,数据传入通过泛型集合传入,获取数据时,通过反射的方式获取,这样无论你的表头是多少项,我都能很方便的生成.另外为了便于 ...

  7. MySQL分页实现

    mysql> select pname from product; +--------+ | pname  | +--------+ | 产品1  | | 产品2  | | 产品三 | +--- ...

  8. GridView网格线都设置

    如今,做网上商店的商品陈列,我想用网络格布局,但总认为空好看.所以我想给它一个净加格线.但是,我遇到了一个问题,网络格布局其实很easy,是集GridView布局和背景颜色adapter布局设置背景颜 ...

  9. zzu--2014年11月16日月潭赛 C称号

    1230: Magnets Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 24  Solved: 13 [id=1230" style=&q ...

  10. zoj3791(An Easy Game) DP

    意甲冠军:给定两个01弦s1,s2.每一个变化s1在m字 - 位.要求k制作步骤之后s1变s2有多少种方法. 解法:DP,关键是状态的设计.考虑还是唯一性和可传递性.dp[i][j]表示第i步后有j个 ...