zoukankan      html  css  js  c++  java
  • ajax实现简单的前后台交互的手机验证码

    html代码

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <script src="jquery.min.js"></script>
    </head>
    <body>
    手机号:<input id="mobile"  type="text" name="mobile" value="">
    <input id="btnSendCode" type="button" value="发送验证码" onclick="sendMessage()" /><br>
    验证码:<input id="code"  type="text" name="mobile" value="">
    </body>
    </html>

    js代码

    <script>
        var timeController; //timer变量,控制时间
        var count = 5; //间隔函数,1秒执行
        var remainCount;//当前剩余秒数
        function sendMessage() {
            remainCount = count;
            //设置button效果,开始计时
            $("#btnSendCode").attr("disabled", "true");
            $("#btnSendCode").val("请在" + remainCount + "秒内输入验证码");//加上这一句不会出现延迟,否则倒计时延迟1s
            timeController = setInterval("SetRemainTime()", 1000); //启动计时器,1秒执行一次
            //向后台发送处理数据
            var mobile = document.getElementById("mobile").value;
    
            $.ajax({
                type: "POST", //用POST方式传输       
                url: 'f.php', //目标地址.
                dataType: "json", //数据格式:JSON
                //data: "dealType=" + dealType +"&uid=" + uid + "&code=" + code,
                data: "&a="+mobile,
                success: function(json){
                        document.getElementById("code").value=json.code;
                }
            });
        }
        //timer处理函数
        function SetRemainTime() {
            if (remainCount==0) {
                clearInterval(timeController);//停止计时器
                $("#btnSendCode").removeAttr("disabled");//启用按钮
                $("#btnSendCode").val("重新发送验证码");
            }
            else {
                remainCount--;
                $("#btnSendCode").val("请在" + remainCount + "秒内输入验证码");
            }
        }
    </script>

    后台文件(f.php)

    <?php
    sleep(5);
    echo json_encode(array('code'=>mt_rand(1000,9999)));
    ?>

    效果

     

  • 相关阅读:
    整理一下看过的图像识别的文章(人脸、车牌、验证码)
    从大象安全套到超级表格
    HDU 3157 Crazy Circuits(有源汇上下界最小流)
    struts2学习笔记(5)---自己定义拦截器
    【分享】4412开发板-嵌入式Linux开发须要掌握的基础知识和技能
    ConvertHelper与泛型集合
    G711
    关于众筹的一些经验,希望能有帮助
    Java基础 Day14 泛型
    LeetCode144:Binary Tree Preorder Traversal
  • 原文地址:https://www.cnblogs.com/lpxspring/p/12116858.html
Copyright © 2011-2022 走看看