`
jingliankui123
  • 浏览: 104755 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

jquery validate

阅读更多
默认分类 2010-04-04 20:35:01 阅读123 评论0 字号:大中小 
jquery.validate是jquery旗下的一个验证框架,借助jquery的优势,我们可以迅速验证一些常见的输入,并且可以自己扩充自己的验证方法,并且对国际化也有很好的支持。
说明:需要JQuery版本:1.2.6+
步骤:
1, 要导入相应的jQuery.js与jquery.validate.js文件
<script src="jquery.js" type="text/javascript"></script>
<script src="jquery.validate.js" type="text/javascript">
2, 在相应的字段上指定验证规则
名称 *<input type="text" name="loginName" class="required">
其中class="required"代表本字段必须要输入数据
3, 指定要对表单进行验证
<script type="text/javascript">
    $(function(){
        $("#testForm").validate();
    });
</script>
 
效果如下图: 
1.           基础知识
1.1. 指定验证规则的方式
1.1.1.   把验证规则写到字段元素的class属性中
例:
名称 * <input type="text" name="loginName" class="required"><br>
密  *  <input type="password" name="password" class="required"><br>
再次输入 <input type="password" name="password2" 
class="{equalTo: '[name=password]'} required"><br>
生日    <input type="text" name="birthday" class="dateISO"><br>
E-mail *<input type="text" name="email" class="email"><br>
PAR(zip)<input type="file" name="resource" class="{accept: 'zip'}">
 
说明:
1,如果使用class="{}"的方式,必须引入包:jquery.metadata.js
1.1.2.   调用validate()方法时传递字段的验证规则
$(function() {
    $("#testForm").validate({
        rules: {
            loginName:{
                required: true,
                min: 2
            }   ,
            password: {
                required: true
            },
            password2: {
                equalTo: "input[name=password]"
            }
        }
    });
});
1.2. 内置的验证规则
required:true               	必输字段
remote:"check.php"          	使用ajax方法调用check.php验证输入值
email:true                  	必须输入正确格式的电子邮件
url:true                    	必须输入正确格式的网址
date:true                   	必须输入正确格式的日期
dateISO:true                	必须输入正确格式的日期(ISO),例如:2010-01-01,2010/01/01 只验证格式,不验证有效性
number:true                 	必须输入合法的数字(负数,小数)
digits:true                 	必须输入整数
creditcard:                 	必须输入合法的信用卡号
equalTo:"#field"           	输入值必须和#field相同
accept: "gif|png|jpg"	输入拥有合法后缀名的字符串(上传文件的后缀),多个后缀之间用’|’隔开
maxlength:5                	输入长度最多是5的字符串(汉字算一个字符)
minlength:10               	输入长度最小是10的字符串(汉字算一个字符)
rangelength:[5,10]         	输入长度必须介于 5 和 10 之间的字符串")(汉字算一个字符)
range:[5,10]               	输入值必须介于 5 和 10 之间
max:5                      	输入值不能大于5
min:10                     	输入值不能小于10
说明:
1, remote是远程验证:比如注册验证用户名是否已被注册,返回值只能是true(验证成功)或false(验证失败)。
2, 某些属性值中的引号不能省略,否则出错。如accept、equalTo等。
1.3. 自定义验证规则
除了内置的验证规则,validation还允许自定义验证规则。这是通过validation的addMethod()方法实现的,语法 为:
jQuery.validator.addMethod("name",function,message)
其中:
1, name为验证规则的名称
2, function定义验证的规则。参数有?。返回值为?。
3, message是验证失败时的提示信息。
1.4. 指定错误提示内容
1.4.1.   更改默认的提示内容
jQuery.extend(jQuery.validator.messages, {
    required: "必选字段",
    remote: "请修正该字段",
    email: "请输入正确格式的电子邮件",
    url: "请输入合法的网址",
    date: "请输入合法的日期",
    dateISO: "请输入合法的日期 (ISO).",
    number: "请输入合法的数字",
    digits: "只能输入整数",
    creditcard: "请输入合法的信用卡号",
    equalTo: "请再次输入相同的值",
    accept: "请输入拥有合法后缀名的字符串",
    maxlength: jQuery.validator.format("允许的最大长度为 {0} 个字符"),
    minlength: jQuery.validator.format("允许的最小长度为 {0} 个字符"),
    rangelength: jQuery.validator.format("允许的长度为{0}和{1}之间"),
    range: jQuery.validator.format("请输入介于 {0} 和 {1} 之间的值"),
    max: jQuery.validator.format("请输入一个最大为 {0} 的值"),
min: jQuery.validator.format("请输入一个最小为 {0} 的值")
扩展工具
stringMinLength: jQuery.validator.format("请输入一个小于{0} 的字符串, 一个中文字符长度为2”),
stringMaxLength: jQuery.validator.format("请输入一个大于} 的字符串, 一个中文字符长度为2”),
string: “含特殊符号!”,
byteRangeLength: "请确保输入的值在3-15个字节之间(一个中文字算2个字节)",
stringCH: "只能输入汉字,一个汉字占两具字节",
stringEN:”只能输入字母”


1.4.2.   个别表单改变提示内容(只对当前表单有效)
方法一:
<input type="file" name="parResource" 
class="{accept: 'zip', messages: {accept:'请选择正确的文件'}}">
 
方法二:
$(function() {
    $("#testForm").validate({
        messages:{
            loginName: {
required: "必选字段2"
}, 
            email: {
                required: '必选字段22',
                email: "请输入正确格式的电子邮件2"
            }
        }
    });
});
1.5. 改变错误消息显示样式
指定label.error的样式就可以了,如下:
<style type="text/css">
    label.error{
        margin-left: 10px;
        color: red;
    }
</style>
 
说明:label.error指class为error的label元素,如:<label for="resource" class="error">
 
 
      这是汤阳光老师讲的,虽然这位老师很年轻,但是他的技术很高,以前学的知识很多,所以也有思路不清的地方,可是自从这位老师给我们讲课,我就感觉到他有一种对JAVA技术的灵性,无论是什么在他那里总能得到思想上的升华!真是佩服!
 
function DIYMethod(){
    // 字符最小长度验证(一个中文字符长度为2)
    jQuery.validator.addMethod("stringMinLength", function(value, element, param) {
        var length = value.length;
        for ( var i = 0; i < value.length; i++) {
            if (value.charCodeAt(i) > 127) {
                length++;
            }
        }
        return this.optional(element) || (length >= param);
    }, $.validator.format("长度不能小于{0}!"));

    // 字符最大长度验证(一个中文字符长度为2)
    jQuery.validator.addMethod("stringMaxLength", function(value, element, param) {
        var length = value.length;
        for ( var i = 0; i < value.length; i++) {
            if (value.charCodeAt(i) > 127) {
                length++;
            }
        }
        return this.optional(element) || (length <= param);
    }, $.validator.format("长度不能大于{0}!"));

    // 字符验证
    jQuery.validator.addMethod("string", function(value, element) {
        return this.optional(element) || /^[\u0391-\uFFE5\w]+$/.test(value);
    }, "不允许包含特殊符号!");

    // 中文字两个字节
    jQuery.validator.addMethod("byteRangeLength", function(value, element, param) {
        var length = value.length;
        for(var i = 0; i < value.length; i++){
            if(value.charCodeAt(i) > 127){
                length++;
            }
        }
        return this.optional(element) || ( length >= param[0] && length <= param[1] );
    }, "请确保输入的值在3-15个字节之间(一个中文字算2个字节)");

    // 只能输入中文
    jQuery.validator.addMethod("stringCH", function(value, element) {
        var length = value.length;
        for(var i = 0; i < value.length; i++){
            if(value.charCodeAt(i) > 127){
                length++;
            }
        }
        return this.optional(element) || /[^u4E00-u9FA5]/g.test(value);
    }, "只能输入汉字,一个汉字占两具字节");

	// 只能输入26个字母
	jQuery.validator.addMethod("stringEN", function(value, element) {
        var length = value.length;
        for(var i = 0; i < value.length; i++){
            if(value.charCodeAt(i) > 127){
                length++;
            }
        }
        alert(length);
        return this.optional(element) || /^[A-Za-z]+$/g.test(value);
    }, "只能输入字母");
}

 

分享到:
评论

相关推荐

    jquery validate 信息气泡提示

    在网页开发中,jQuery Validate 是一个非常常用的验证插件,用于对用户输入的数据进行校验,确保数据的有效性和完整性。这个插件可以帮助开发者创建复杂的表单验证规则,提高用户体验,减少服务器端的压力。结合 ...

    jquery validate例子

    《jQuery Validate插件详解与实例应用》 在Web开发中,表单验证是不可或缺的一环,它能够确保用户输入的数据符合预设的规则,提高数据的准确性和安全性。jQuery Validate是一个强大的JavaScript库,专为jQuery设计...

    jquery validate依赖包及其帮助文档.rar

    《jQuery Validate插件详解与应用指南》 在Web开发领域,表单验证是不可或缺的一环,它能够确保用户输入的数据符合预设的规则,从而提高数据的准确性和系统的稳定性。jQuery Validate是一个强大的JavaScript库,专...

    jquery validate 表单验证

    首先,`jquery.js`是jQuery的核心库,它是jQuery Validate的基础,没有它,我们无法使用jQuery Validate。确保引入了最新的jQuery版本,以便利用其强大的DOM操作和事件处理能力。 其次,`myvalidate.js`可能是你...

    jQuery Validate 1.1.2

    jQuery Validate 是一个强大的JavaScript库,专门用于前端表单验证,由jQuery团队开发并维护。它极大地简化了在网页上创建高效、用户友好的验证规则的过程,避免了开发者编写大量重复的验证代码。jQuery Validate ...

    jquery validate 验证自定义样式

    在本文中,我们将深入探讨如何利用jQuery Validate来创建自定义验证样式。 首先,我们从标题"jquery validate 验证自定义样式"开始。jQuery Validate插件默认提供了一些基本的样式,但这些样式可能不能满足所有设计...

    jquery validate默认错误提示显示位置修改

    ### 修改jQuery Validate默认错误提示显示位置 在网页开发过程中,表单验证是非常重要的一个环节,它不仅能够提高用户体验,还能确保数据的有效性和安全性。jQuery Validate插件是实现表单验证功能的一个强大工具,...

    jquery validate 验证手册

    《jQuery Validate验证手册》是针对JavaScript库jQuery的一个插件,主要功能是提供强大的表单验证功能,帮助开发者创建用户友好的、功能丰富的交互式表单。这个插件基于jQuery库,利用JavaScript的强大功能,简化了...

    jquery validate 使用详解

    ### jQuery Validate 插件使用详解 #### 一、概述 jQuery Validate 是一款强大的表单验证插件,基于 jQuery 框架开发而成。它能够帮助开发者轻松实现客户端表单验证功能,大大提高了用户体验并减少了服务器端的...

    解决jquery validate remote 为什么只验证一次

    解决jquery validate remote 只验证一次的问题

    jQuery Validate插件验证表单小练

    jQuery Validate 插件是Web开发中广泛使用的工具,主要用于实现前端表单验证,它极大地简化了用户输入数据的检查过程,提供了丰富的验证规则和自定义方法。在这个“jQuery Validate插件验证表单小练”中,我们将深入...

    jQuery validate 自定义样式、规则

    jQuery Validate 是一个非常流行的JavaScript库,用于在网页表单中进行验证。这个库极大地简化了对用户输入数据的检查,确保在提交之前满足特定的业务规则。在本篇博文中,我们将深入探讨如何自定义jQuery Validate...

    jquery validate的漂亮css样式验证

    `jQuery Validate`是一个非常流行的JavaScript库,用于在前端进行表单验证。这个库极大地简化了对用户输入数据的检查,确保它们符合特定的规则和格式。`jQuery Validate`结合自定义CSS样式,可以让表单验证既实用又...

    jQuery validate框架的个性化验证

    jQuery Validate 是一个强大的客户端验证插件,用于在用户提交表单前进行实时验证。这个框架大大简化了HTML表单的验证过程,提供了丰富的内置验证规则和可扩展的自定义验证功能,使得表单验证更加人性化和高效。 1....

    Jquery Validate修改版

    《jQuery Validate修改版:提升表单验证体验》 在网页开发中,用户输入的验证是不可或缺的一环,它能够确保用户提交的数据符合预期,避免无效数据的产生,从而提高用户体验和服务器端处理效率。jQuery Validate插件...

    jquery validate配合struts2简单整改

    《jQuery Validate与Struts2整合应用详解》 在Web开发中,前端验证用户输入的数据是必不可少的一环,jQuery Validate插件就是一款强大的JavaScript验证工具,它可以帮助我们方便地实现表单验证。与此同时,Struts2...

    关于jquery validate plugin 指定需要验证对象解决方案

    《关于jQuery Validate Plugin指定需要验证对象的解决方案》 在Web开发中,表单验证是必不可少的一环,确保用户输入的数据符合预设的规则。jQuery Validate Plugin是一款强大的客户端表单验证插件,它使得这一过程...

    jquery validate表单验证插件制作注册表单提交验证

    在本文中,我们将深入探讨如何使用jQuery Validate插件来创建一个功能完备的注册表单,进行数据提交前的验证。jQuery Validate是一个强大的JavaScript库,它为HTML表单提供了灵活且易于使用的验证规则,确保用户输入...

    jQueryValidate.rar

    《jQuery Validate插件详解及其应用》 在Web开发中,表单验证是不可或缺的一部分,它确保用户输入的数据符合预设的规则,提高了用户体验并减少了服务器端的负担。jQuery Validate插件是实现这一功能的强大工具,它...

Global site tag (gtag.js) - Google Analytics