zoukankan      html  css  js  c++  java
  • jQuery validation 的插件

    之前做客户端验证感觉自己javascript 不行,虽然能写出来一完整的验证,但从不自信,一直觉得客户端验证是比较繁琐的事情,但是又不能不做,只到最开始接触ajax ,遇到了一个jQuery validation 的插件,在网上看功能比较强大,而且看起来比较容易,所以就尝试一下,效果还真不错!

    jQuery validation 插件提供的一些DEMO.在这些DEMO 都是一些比较常用而且很好的例子:中间


    $.validator.setDefaults({
    debug: true
    });
    设置默认的状态为debug,这样用户的数据就不会提交了。

    接下来是一段比较长的代码,但是不用怕,因为真的挺简单的//当页面载入完成时,执行以下动作
    $().ready(function() {

    //验证指定表单
    $("#myform").validate({
    //设置默认的状态为keyup,也可以设置为blur
    event: "keyup",     //触发验证的事件
    //设定规则
    rules: {
    //对应id为'username'的input
    username: {
    //必填项
    required: true,
    //最多和最少的字符数
    rangeLength:[4,16]
    },
    mail: {
    required: true,
    //声明这是一个电子邮件
    email: true
    },
    password: {
    required: true,
    //最少4个字符
    minLength: 4
    },
    confirm_password: {
    required: true,
    minLength: 4,
    // 与哪个等同,这里是id为password的input等同
    equalTo: "#password"
    },
    agree: "required"

    },

    //这里是与规则对应的错误代码
    messages: {
    username: {
    //如果用户名为空,则显示下面的信息
    required: '请输入用户名',
    //如果字符串的长度不符合,则显示下面的信息
    rangeLength: '用户名必须在4-16个字符之间'
    },
    password: {
    required: '请输入密码',
    minLength: '密码必须大于4个字符'
    },
    confirm_password: {
    required: '请确认你的密码',
    equalTo: '两次密码输入不一致',
    minLength: '密码必须大于4个字符'
    },
    agree: '请同意我们的条款',
    mail: '请输入有效的E-MAIL帐户'
    }
    });
    });

    下面是一个比较简单的例子:

    HTML 代码:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"  
    "http://www.w3.org/TR/html4/loose.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml"> 
        <head> 
            <meta http-equiv="Content-Type" content="text/html; charset=gbk" /> 
            <title>jQuery验证</title> 

            <link rel="stylesheet" href="theme.css" type="text/css"/>
            <script src="jquery.js"   type="text/javascript"></script> 
            <script type="text/javascript" src="jquery.validate.js"></script>
            <script type="text/javascript" src="fv.js"></script> 
           
        </head> 
        <body> 
            <form class="cmxform" id="signupForm" method="get" action="">
        <fieldset>
            <legend>Validating a complete form</legend>
            <p>
                <label for="firstname">Firstname</label>
                <input id="firstname" name="firstname" />
            </p>
            <p>
                <label for="lastname">Lastname</label>
                <input id="lastname" name="lastname" />
            </p>
            <p>
                <label for="username">Username</label>
                <input id="username" name="username" />
            </p>
            <p>
                <label for="password">Password</label>
                <input id="password" name="password" type="password" />
            </p>
            <p>
                <label for="confirm_password">Confirm password</label>
                <input id="confirm_password" name="confirm_password" type="password" />
            </p>
            <p>
                <label for="email">Email</label>
                <input id="email" name="email" />
            </p>
            <p>
                <label for="agree">Please agree to our policy</label>
                <input type="checkbox" id="agree" name="agree" />
            </p>
            <p>
                <input class="submit" type="submit" value="Submit"/>
            </p>
        </fieldset>
    </form>
        </body> 
    </html>

    JS  代码也不是jquery validation 验证代码:

    //验证通过表单提交的方式
    $.validator.setDefaults({
        submitHandler: function() { alert("submitted!"); }
    });

    $().ready(function() {
        // validate signup form on keyup and submit
        $("#signupForm").validate({
            rules: {  //验证规则定义
                firstname: "required",
                lastname: "required",
                username: {
                    required: true,
                    minlength: 2
                },
                password: {
                    required: true,
                    minlength: 5
                },
                confirm_password: {
                    required: true,
                    minlength: 5,
                    equalTo: "#password"
                },
                email: {
                    required: true,
                    email: true
                },
                topic: {
                    required: "#newsletter:checked",
                    minlength: 2
                },
                agree: "required"
            },
            messages: {    //验证错误信息配置
                firstname: "Please enter your firstname",
                lastname: "Please enter your lastname",
                username: {
                    required: "Please enter a username",
                    minlength: "Your username must consist of at least 2 characters"
                },
                password: {
                    required: "Please provide a password",
                    minlength: "Your password must be at least 5 characters long"
                },
                confirm_password: {
                    required: "Please provide a password",
                    minlength: "Your password must be at least 5 characters long",
                    equalTo: "Please enter the same password as above"
                },
                email: "Please enter a valid email address",
                agree: "Please accept our policy"
            }
        });
        /**
            验证确认密码通过后,更改密码时,验证确认密码的合法性
        **/
        $("#password").blur(function() {
            $("#confirm_password").valid();
        });

        success: function(label) {
            label.html('√').addClass("success");
        }
    });



  • 相关阅读:
    java实现第六届蓝桥杯垒骰子
    java实现第六届蓝桥杯打印大X
    java实现第六届蓝桥杯打印大X
    java实现第六届蓝桥杯移动距离
    java实现第六届蓝桥杯移动距离
    java实现第六届蓝桥杯加法变乘法
    java实现第六届蓝桥杯加法变乘法
    java实现第六届蓝桥杯奇妙的数字
    将已有的Eclipse项目转化为Maven项目
    彻底理解JAVA动态代理
  • 原文地址:https://www.cnblogs.com/lihaijia/p/1584755.html
Copyright © 2011-2022 走看看