zoukankan      html  css  js  c++  java
  • (转载)jquery的validate

    本文转载自:http://blog.csdn.net/lee576/archive/2008/12/03/3439072.aspx

    参看:http://docs.jquery.com/Plugins/Validation并整理

    jquery.validate.js是jquery旗下的一个验证框架,借助jquery的优势,我们可以迅速验证一些常见的输入,并且可以自己扩充自己的验证方法,并且对国际化也有很好的支持

    使用这个函数很简单,看以下的代码

    Html代码 复制代码
    1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"    
    2.                     "http://www.w3.org/TR/html4/loose.dtd">  
    3. <html>  
    4. <head>  
    5.   <script src="http://code.jquery.com/jquery-latest.js"></script>  
    6.   <link rel="stylesheet" href="http://dev.jquery.com/view/trunk/plugins/validate/jquery.validate.css" type="text/css" media="screen" />  
    7. <script type="text/javascript" src="http://dev.jquery.com/view/trunk/plugins/validate/jquery.validate.js"></script>  
    8. <style type="text/css">  
    9. * { font-family: Verdana; font-size: 96%; }   
    10. label {  10em; float: left; }   
    11. label.error { float: none; color: red; padding-left: .5em; vertical-align: top; }   
    12. p { clear: both; }   
    13. .submit { margin-left: 12em; }   
    14. em { font-weight: bold; padding-right: 1em; vertical-align: top; }   
    15. </style>  
    16.   <script>  
    17.   $(document).ready(function(){   
    18.     $("#commentForm").validate();   
    19.   });   
    20.   </script>  
    21.      
    22. </head>  
    23. <body>  
    24.      
    25.   
    26.  <form class="cmxform" id="commentForm" method="get" action="">  
    27.  <fieldset>  
    28.    <legend>A simple comment form with submit validation and default messages</legend>  
    29.    <p>  
    30.      <label for="cname">Name</label>  
    31.      <em>*</em><input id="cname" name="name" size="25" class="required" minlength="2" />  
    32.    </p>  
    33.    <p>  
    34.      <label for="cemail">E-Mail</label>  
    35.      <em>*</em><input id="cemail" name="email" size="25"  class="required email" />  
    36.    </p>  
    37.    <p>  
    38.      <label for="curl">URL</label>  
    39.      <em>  </em><input id="curl" name="url" size="25"  class="url" value="" />  
    40.    </p>  
    41.    <p>  
    42.      <label for="ccomment">Your comment</label>  
    43.      <em>*</em><textarea id="ccomment" name="comment" cols="22"  class="required"></textarea>  
    44.    </p>  
    45.    <p>  
    46.      <input class="submit" type="submit" value="Submit"/>  
    47.    </p>  
    48.  </fieldset>  
    49.  </form>  
    50. </body>  
    51. </html>  

      总结,我们只要在加入如下的JAVASCRIPT代码,就可以把指定的FORM加上验证

    Html代码 复制代码
    1. $(document).ready(function(){   
    2.    $("#commentForm").validate();   
    3.  });  

      不过我们还要在需要验证的INPUT里面class加入required说明是必填项,其他的就是验证相关数据比如email就是验证email的数据结构

    以下列出validate自带的默认验证

            required: "必选字段",
            remote: "请修正该字段",
            email: "请输入正确格式的电子邮件",
            url: "请输入合法的网址",
            date: "请输入合法的日期",
            dateISO: "请输入合法的日期 (ISO).",
            number: "请输入合法的数字",
            digits: "只能输入整数",
            creditcard: "请输入合法的信用卡号",
            equalTo: "请再次输入相同的值",
            accept: "请输入拥有合法后缀名的字符串",
            maxlength: jQuery.format("请输入一个长度最多是 {0} 的字符串"),
            minlength: jQuery.format("请输入一个长度最少是 {0} 的字符串"),
            rangelength: jQuery.format("请输入一个长度介于 {0} 和 {1} 之间的字符串"),
            range: jQuery.format("请输入一个介于 {0} 和 {1} 之间的值"),
            max: jQuery.format("请输入一个最大为 {0} 的值"),
            min: jQuery.format("请输入一个最小为 {0} 的值")

    validate ()的可选项

    debug:进行调试模式

    $(".selector").validate



    ({
    debug: true
    })

      把调试设置为默认

    $.validator.setDefaults



    ({
    debug: true
    })

    submitHandler:用其他方式替代默认的SUBMIT,比如用AJAX的方式提交

    $(".selector").validate



    ({
    submitHandler: function(form) {
    $(form).ajaxSubmit();
    }
    })

    ignore:忽略某些元素不验证

    $("#myform").validate



    ({
    ignore: ".ignore"
    })

    rules: 默认下根据form的classes, attributes, metadata判断,但也可以在validate函数里面声明
    Key/value 可自定义规则. Key是对象的名字 value是对象的规则,可以组合使用 class/attribute/metadata rules.

    以下代码特别验证selector类中name='name'是必填项并且 email是既是必填又要符合email的格式

    $(".selector").validate

    ({
    rules: {
    // simple rule, converted to {required:true}
    name: "required",
    // compound rule
    email: {
    required: true,
    email: true
    }
    }
    })

    messages:更改默认的提示信息

    $(".selector").validate

    ({
    rules: {
    name: "required",
    email: {
    required: true,
    email: true
    }
    },
    messages: {
    name: "Please specify your name",
    email: {
    required: "We need your email address to contact you",
    email: "Your email address must be in the format of name@domain.com"
    }
    }
    })

    groups:定义一个组,把几个地方的出错信息同意放在一个地方,用errorPlacement控制把出错信息放在哪里

    $("#myform").validate
    ({
    groups: {
    username: "fname lname"
    },
    errorPlacement: function(error, element) {
    if (element.attr("name") == "fname" || element.attr("name") == "lname" )
    error.insertAfter("#lastname");
    else
    error.insertAfter(element);
    },
    debug:true
    })
  • 相关阅读:
    dal configure 源码分析
    dubbo源码
    mysql replace info 和 auto_increment可能产生的问题
    消息队列总结
    关于系统并发数和QPS的思考
    字符打印流及字节打印流使用
    oracle分组查询二,row_number() over()函数的使用
    oracle表函数使用table function
    Script:10g中显示Active Session Count by Wait Class
    剑指 Offer 61. 扑克牌中的顺子
  • 原文地址:https://www.cnblogs.com/wpcnblog/p/2088350.html
Copyright © 2011-2022 走看看