• 表单验证


    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <title>表单注册</title>
        <style>
            body {
                margin: 0;
                padding: 0;
                background-color: #F7F7F7;
            }
    
            ul {
                margin: 0;
                padding: 50px;
                list-style: none;
            }
    
            .register {
                 800px;
                margin: 50px auto;
                background-color: #FFF;
                border: 1px solid #CCC;
                border-radius: 5px;
            }
    
            li {
                display: flex;
                margin: 20px 0;
            }
    
            label,
            input {
                display: block;
                float: left;
                height: 46px;
                font-size: 24px;
                box-sizing: border-box;
                color: #333;
            }
    
            label {
                 200px;
                line-height: 46px;
                margin-right: 30px;
                text-align: right;
            }
    
            input {
                 320px;
                padding: 8px;
                line-height: 1;
                outline: none;
                position: relative;
            }
    
            input.code {
                 120px;
            }
    
            input.verify {
                 190px;
                margin-left: 10px;
            }
    
            input.disabled {
                background-color: #CCC !important;
            }
    
            input[type=button] {
                border: none;
                color: #FFF;
                background-color: #E64145;
                border-radius: 4px;
                cursor: pointer;
            }
    
            .tips {
                position: fixed;
                top: 0;
                 100%;
                height: 40px;
                text-align: center;
            }
    
            .tips p {
                min- 300px;
                max- 400px;
                line-height: 40px;
                margin: 0 auto;
                color: #FFF;
                display: none;
                background-color: #C91623;
            }
        </style>
    </head>
    
    <body>
        <div class="register">
            <form id="ajaxForm">
                <ul>
                    <li>
                        <label for="">用户名</label>
                        <input type="text" name="name" class="name">
                    </li>
                    <li>
                        <label for="">请设置密码</label>
                        <input type="password" name="pass" class="pass">
                    </li>
                    <li>
                        <label for="">请确认密码</label>
                        <input type="password" name="repass" class="repass">
                    </li>
                    <li>
                        <label for="">验证手机</label>
                        <input type="text" name="mobile" class="mobile">
                    </li>
                    <li>
                        <label for="">短信验证码</label>
                        <input type="text" name="code" class="code">
                        <input type="button" value="获取验证码" class="verify">
                    </li>
                    <li>
                        <label for=""></label>
                        <input type="button" class="submit" value="立即注册">
                    </li>
                </ul>
            </form>
        </div>
        <!-- 提示信息 -->
        <div class="tips">
            <p>用户名不能为空</p>
        </div>
        <!-- 引入jQuery -->
        <script src="js/jquery.min.js"></script>
        <script>
            /*
             *  点击立即注册:
             *     1:我要获取用户输入的数据。
             *     2:获取到这些数据之后,我要进行一个简单的验证
             *      防止ajax 重复提交,当用户点击一次之后,我们就把这个立即注册的按钮
             *   禁用调用,当服务器的数据响应完成之后,我在把这个按钮给启用。
             *     验证通过,
             *           我数据发送给服务器
             *     验证不通过
             *           给用户一个提示。
             * */
    
            $(".submit").on("click", function () {
                //当用户点击,我判断一下,判断这个按钮是否可以点击。
                //我的按钮上面是否存在这样的一个disabled 的一个样式,如果有这样的一个样式
                //我就返回
                //否则让用户往下注册
                var _this = $(this);
                if (_this.hasClass("disabled")) {
                    return; //结束这个方法我就使用return;
                    //return false; 相当于给这个方法一个返回值。
                }
                _this.addClass("disabled");
                //当服务器响应完成,我应该这个按钮又激活,让用户可以注册。
                //获取表单里面的数据。
                //页面的表单想太多,我们一个一个表单项获取数据,这个工作非常繁琐
                //jQuery 给我们提供了一个方法,可以帮我批量去获取表单里面的数据。
                //serialize 序列化
                var data = $("#ajaxForm").serialize();
                $.ajax({
                    type: "GET",
                    url: "registerform.php",
                    data: data,
                    beforeSend: function () {
                        //获取数据。
                    },
                    //服务器返回的 数据,通过这个参数去接受。
                    success: function (info) {
                        /*  alert(info);*/
                    },
                    complete: function () {
                        _this.removeClass("disabled");
                    }
                })
            });
            /*
             *  获取验证码的功能。
             *  1:我要给这个按钮添加要给点击事件
             *  2:获取到手机号
             *  3:你要把发送给服务器,发送给服务器的时候还要对这个手机号进行一个简单的校验
             *      校验是两种情况,
             *      一种成功
             *           发送手机号给服务器,获取验证码的按钮不能点击了,里面的文本变成动态倒计时
             *       倒计时完毕,变成可以获取。
             *      一种失败
             *      停止发送,给用户提示。
             * */
            $(".verify").on("click", function () {
                var tel = $(".mobile").val();
                //转成jQuery 对象。
                var _this = $(this);
                //添加点击事件。
                /* var tel=$(".mobile").val();*/
                //写一个正则,对这个手机号进行验证。
                $.ajax({
                    url: "07register.php",
                    type: "post",
                    data: {
                        "telephone": tel
                    },
                    beforeSend: function () {
                        if (tel != 11) {
                            //停止,tel.leng不要发送请求。
                            //给用户提示,然后停止return false;
                            $(".tips>p").text("输入的手机号有误哦,亲")
                                .fadeIn(1000)
                                .stop(true, true)
                                .delay(1500)
                                .fadeOut(1000);
                            return false;
                        }
    
                    },
                    success: function (data) {
                        //我要让用户首先按钮必须变成不能点击,而且里面的内容动态变化。
                        _this.addClass("disabled");
                        var seconds = 10;
                        var ids = setInterval(function () {
                            seconds--;
                            _this.val(seconds + "秒之后获取");
                            if (seconds <= 0) {
                                //结束循环
                                _this.removeClass("disabled");
                                _this.val("发送验证码");
                                clearInterval(ids);
                            }
                        }, 1000);
                    }
                })
    
    
            });
        </script>
    </body>
    
    </html>
    
    <!DOCTYPE html>
    <htmllang="en">

    <head>
    <metacharset="UTF-8">
    <title>表单注册</title>
    <style>
    body {
    margin: 0;
    padding: 0;
    background-color: #F7F7F7;
    }

    ul {
    margin: 0;
    padding: 50px;
    list-style: none;
    }

    .register {
    width: 800px;
    margin: 50pxauto;
    background-color: #FFF;
    border: 1pxsolid#CCC;
    border-radius: 5px;
    }

    li {
    display: flex;
    margin: 20px0;
    }

    label,
    input {
    display: block;
    float: left;
    height: 46px;
    font-size: 24px;
    box-sizing: border-box;
    color: #333;
    }

    label {
    width: 200px;
    line-height: 46px;
    margin-right: 30px;
    text-align: right;
    }

    input {
    width: 320px;
    padding: 8px;
    line-height: 1;
    outline: none;
    position: relative;
    }

    input.code {
    width: 120px;
    }

    input.verify {
    width: 190px;
    margin-left: 10px;
    }

    input.disabled {
    background-color: #CCC!important;
    }

    input[type=button] {
    border: none;
    color: #FFF;
    background-color: #E64145;
    border-radius: 4px;
    cursor: pointer;
    }

    .tips {
    position: fixed;
    top: 0;
    width: 100%;
    height: 40px;
    text-align: center;
    }

    .tipsp {
    min-width: 300px;
    max-width: 400px;
    line-height: 40px;
    margin: 0auto;
    color: #FFF;
    display: none;
    background-color: #C91623;
    }
    </style>
    </head>

    <body>
    <divclass="register">
    <formid="ajaxForm">
    <ul>
    <li>
    <labelfor="">用户名</label>
    <inputtype="text"name="name"class="name">
    </li>
    <li>
    <labelfor="">请设置密码</label>
    <inputtype="password"name="pass"class="pass">
    </li>
    <li>
    <labelfor="">请确认密码</label>
    <inputtype="password"name="repass"class="repass">
    </li>
    <li>
    <labelfor="">验证手机</label>
    <inputtype="text"name="mobile"class="mobile">
    </li>
    <li>
    <labelfor="">短信验证码</label>
    <inputtype="text"name="code"class="code">
    <inputtype="button"value="获取验证码"class="verify">
    </li>
    <li>
    <labelfor=""></label>
    <inputtype="button"class="submit"value="立即注册">
    </li>
    </ul>
    </form>
    </div>
    <!-- 提示信息 -->
    <divclass="tips">
    <p>用户名不能为空</p>
    </div>
    <!-- 引入jQuery -->
    <scriptsrc="js/jquery.min.js"></script>
    <script>
    /*
    * 点击立即注册:
    * 1:我要获取用户输入的数据。
    * 2:获取到这些数据之后,我要进行一个简单的验证
    * 防止ajax 重复提交,当用户点击一次之后,我们就把这个立即注册的按钮
    * 禁用调用,当服务器的数据响应完成之后,我在把这个按钮给启用。
    * 验证通过,
    * 我数据发送给服务器
    * 验证不通过
    * 给用户一个提示。
    * */

    $(".submit").on("click", function () {
    //当用户点击,我判断一下,判断这个按钮是否可以点击。
    //我的按钮上面是否存在这样的一个disabled 的一个样式,如果有这样的一个样式
    //我就返回
    //否则让用户往下注册
    var _this =$(this);
    if (_this.hasClass("disabled")) {
    return; //结束这个方法我就使用return;
    //return false; 相当于给这个方法一个返回值。
    }
    _this.addClass("disabled");
    //当服务器响应完成,我应该这个按钮又激活,让用户可以注册。
    //获取表单里面的数据。
    //页面的表单想太多,我们一个一个表单项获取数据,这个工作非常繁琐
    //jQuery 给我们提供了一个方法,可以帮我批量去获取表单里面的数据。
    //serialize 序列化
    var data =$("#ajaxForm").serialize();
    $.ajax({
    type: "GET",
    url: "registerform.php",
    data: data,
    beforeSend: function () {
    //获取数据。
    },
    //服务器返回的 数据,通过这个参数去接受。
    success: function (info) {
    /* alert(info);*/
    },
    complete: function () {
    _this.removeClass("disabled");
    }
    })
    });
    /*
    * 获取验证码的功能。
    * 1:我要给这个按钮添加要给点击事件
    * 2:获取到手机号
    * 3:你要把发送给服务器,发送给服务器的时候还要对这个手机号进行一个简单的校验
    * 校验是两种情况,
    * 一种成功
    * 发送手机号给服务器,获取验证码的按钮不能点击了,里面的文本变成动态倒计时
    * 倒计时完毕,变成可以获取。
    * 一种失败
    * 停止发送,给用户提示。
    * */
    $(".verify").on("click", function () {
    var tel =$(".mobile").val();
    //转成jQuery 对象。
    var _this =$(this);
    //添加点击事件。
    /* var tel=$(".mobile").val();*/
    //写一个正则,对这个手机号进行验证。
    $.ajax({
    url: "07register.php",
    type: "post",
    data: {
    "telephone": tel
    },
    beforeSend: function () {
    if (tel !=11) {
    //停止,tel.leng不要发送请求。
    //给用户提示,然后停止return false;
    $(".tips>p").text("输入的手机号有误哦,亲")
    .fadeIn(1000)
    .stop(true, true)
    .delay(1500)
    .fadeOut(1000);
    returnfalse;
    }

    },
    success: function (data) {
    //我要让用户首先按钮必须变成不能点击,而且里面的内容动态变化。
    _this.addClass("disabled");
    var seconds =10;
    var ids =setInterval(function () {
    seconds--;
    _this.val(seconds +"秒之后获取");
    if (seconds <=0) {
    //结束循环
    _this.removeClass("disabled");
    _this.val("发送验证码");
    clearInterval(ids);
    }
    }, 1000);
    }
    })


    });
    </script>
    </body>

    </html>
  • 相关阅读:
    mysql TO_DAYS()函数
    MySQL year函数
    protobuff java 包编译(Windows)
    苹果笔记本只有电源键能用的解决办法
    linux普通用户获取管理员权限
    linux用户管理
    基于ASIHTTPRequest封装的HttpClient
    Object-C 多线程中锁的使用-NSLock
    appstore 上传需要的icon
    iPhone之IOS5内存管理(ARC技术概述)
  • 原文地址:https://www.cnblogs.com/sxz2008/p/7765906.html
Copyright © 2020-2023  润新知