• JQuery.validate.js 表单验证


    官方网站:http://bassistance.de/jquery-plugins/jquery-plugin-validation/
    API: http://jquery.bassistance.de/api-browser/plugins.html

    默认校验规则
    (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}.")
    },
    如需要修改,可在 js 代码中加入:

    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} 的值")
    });
    推荐做法,将此文件放入 messages_cn.js 中,在页面中引入:

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


    使用案例如下:
    <form id="formLogin" method="post">
    <div>
    <label for="username">Username:</label>
    <input type="text" id="username" name="username" />
    </div>
    <div>
    <label for="password">password:</label>
    <input type="text" id="password" name="password" />
    </div>
    <div>
    <label for="password1">password1:</label>
    <input type="text" id="password1" name="password1" />
    </div>
    <div>
    <label for="sex">sex:</label>
    <select id="sex" name="sex">
    <option id="sexopt" value="" selected="selected">请选择</option>
    <option id="sexnan" value="1">男</option>
    <option id="sexnv" value="2">女</option>
    </select>
    </div>
    <div>
    <label for="favorite">level:</label>
    <input type="checkbox" id="sport" name="favorite" value="sport" />sport
    <input type="checkbox" id="write" name="favorite" value="write" />write
    </div>
    <div>
    <label for="level">level:</label>
    <input type="radio" id="one" name="level" value="one" />1
    <input type="radio" id="two" name="level" value="two" />2
    </div>
    <div>
    <input id="submit" type="button" value="submit" />
    </div>
    </form>

    <script type="text/javascript">
    $().ready(function () {
      $("#formLogin").validate({
        rules: {
          username: {
            required: true
          },
          password: {
            required: true
          },
          sex: {
            required: true
          },
          level: {
            required: true
          },
          favorite: {
            required: true
          }
        },
        messages: {
          username: {
            required: "please input username"
          },
          password: {
            required: "please input password"
          },
          sex: {
            required: "please select sex"
          },
          level: {
            required: "level requred"
          },
          favorite: {
            required: "favorite required"
          }
        },

        // 单选、多选的错误提示
        errorPlacement: function (error, element) { //指定错误信息位置
          if (element.is(':radio') || element.is(':checkbox')) { //如果是radio或checkbox
            var eid = element.attr('name'); //获取元素的name属性
            error.appendTo(element.parent()); //将错误信息添加当前元素的父结点后面
          } else {
            error.insertAfter(element);
          }
        }
      });
    });
    $("#submit").click(function () {
      $("#submit").submit();
    });
    </script>

    同类文章连接

    连接:http://www.tuicool.com/articles/UVziQr
    连接:http://www.cnblogs.com/si-shaohua/p/3780321.html
    连接:http://www.cnblogs.com/dixinyunpan/p/5853927.html
    连接:http://www.sucaijiayuan.com/Js/BiaoDanAnNiu/1202.html

  • 相关阅读:
    setTimeout和setInterval的区别(面试题)
    什么是跨域?列出几种JS跨域解决方法?(前端面试题)
    建网站的流程
    CSS Sprite(雪碧图)简单使用
    前端不得不说的性能优化
    面试题
    前端如何做好SEO优化
    JavaScript string字符串对象常见方法
    微信号复制跟跳转——clipboard.js
    微信号复制跟跳转——execCommand()
  • 原文地址:https://www.cnblogs.com/laowenBlog/p/6175721.html
Copyright © 2020-2023  润新知