Fork me on GitHub

jQuery Validate 表单验证插件----Validate简介,官方文档,官方下载地址

 一、 jQuery Validate 插件的介绍

jQuery Validate 插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求。该插件捆绑了一套有用的验证方法,包括 URL 和电子邮件验证,同时提供了一个用来编写用户自定义方法的 API。所有的捆绑方法默认使用英语作为错误信息,且已翻译成其他 37 种语言。

该插件是由 Jörn Zaefferer 编写和维护的,他是 jQuery 团队的一名成员,是 jQuery UI 团队的主要开发人员,是 QUnit 的维护人员。

最常使用JavaScript的场合就是表单的验证,而jQuery作为一个优秀的JavaScript库,也提供了一个优秀的表单验证插件----Validation。Validation是历史最悠久的jQuery插件之一,经过了全球范围内不同项目的验证,并得到了许多Web开发者的好评。

 

官方网站:http://bassistance.de/jquery-plugins/jquery-plugin-validation/

在线文档:http://docs.jquery.com/Plugins/Validation

在线 API:http://jquery.bassistance.de/api-browser/plugins.html

配置说明:http://docs.jquery.com/Plugins/Validation/validate#options

项目介绍:http://plugins.jquery.com/project/validate

Github:https://github.com/jzaefferer/jquery-validation 

 

二、jQuery Validate 拥有的特点介绍

 

作为一个标准的验证方法库,jQuery Validate 拥有以下的特点:

(1)内置验证规则。拥有必填、数字、Email、URL和信用卡号码等19类内置验证规则。功能强大的 jQuery 表单验证插件,适用于日常的 E-mail、电话号码、网址等验证及 Ajax 验证,除自身拥有丰富的验证规则外,还可以添加自定义的验证规则。

兼容 IE 6+, Chrome, Firefox, Safari, Opera 10+ 。

(2)自定义验证规则。可以很方便地自定义验证规则。

(3) 简单,强大的信息提示。默认了验证信息提示,并提供自定义覆盖默认的提示信息的功能。

(4) 实时验证:通过keyup 或是blur事件来触发校验,而不仅仅是提交的时候进行校验。

 

三、jQuery Validate 的下载地址

 

(1)官网下载地址 :http://jqueryvalidation.org/

(2)Github 开源项目: https://github.com/jzaefferer/jquery-validation

  

四、简单的例子来学习jQuery Validate 

 

 这些例子前提都是需要引入jQuery库和Validation插件。

 

    <script type="text/javascript" src="../../lib/jquery-1.11.1.js"></script>
    <script type="text/javascript" src="../../dist/jquery.validate.js"></script>

 

1. 利用插件进行一些简单的校验

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>jQuery PlugIn -一个简单带验证例子</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <script type="text/javascript" src="../../lib/jquery-1.11.1.js"></script>
    <script type="text/javascript" src="../../dist/jquery.validate.js"></script>
    <script type="text/javascript" src="../../dist/localization/messages_zh.js"></script>
    <style type="text/css">
    * { font-family: Verdana; font-size:13px; }
    input[type='text']{width:200px;}
    textarea{width:155px;}
    label { width: 10em; float: left; }
    label.error { float: none; color: red; padding-left: .5em; vertical-align: top; }
    </style>
    <script>
    $(document).ready(function(){
        $("#commentForm").validate();
    });
    </script>
</head>
<body>
 
 <form id="commentForm" method="get" action="" >
 <fieldset>
   <legend>表单验证</legend>
   <p><label>Name</label><input  name="name" class="required" maxlength="4" minlength="2"  /></p>
   <p><label >E-Mail</label><input  name="email" class="required email" /></p>
   <p><label >URL</label><input  name="url" class="url"/></p>
   <p><label>text</label><textarea name="text" cols="22"  class="required"></textarea></p>
   <p><input class="submit" type="submit" value="提交"/></p>
 </fieldset>
 </form>
 
</body>
</html>

 

效果如下:

 以上的校验的解释:

(1)首先需要引入jquery-1.11.1.js,因为这个插件实在JQuery的基础上进行的。

(2)引入校验插件 jquery.validate.js 。

(3)引入提示本地化脚本。验证信息的国际化,默认验证提示是英文的,导入validation已写好的国际化文件就可实现国际化。改变 错误/正确 消息显示样式。

(4)在input框的class属性中添加要校验的类型。针对不同的字段,进行验证规则编码,设置字段相应的属性

      其中的一些可验证的规则类型:      

 

(1)required:true 必输字段 
(2)remote:"check.shtml" 使用ajax方法调用check.shtml验证输入值 
(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

 

(5)确定哪个表单需要被验证

 

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

 

posted @ 2016-01-10 15:35  刘哥聊技术  阅读(6148)  评论(0编辑  收藏  举报