您现在的位置: 365建站网 > 365文章 > jQuery 前端实现手机验证码按钮显示倒计时的代码

jQuery 前端实现手机验证码按钮显示倒计时的代码

文章来源:365jz.com     点击数:358    更新时间:2018-04-01 13:43   参与评论
1.jQuery 前端实现手机验证码方法一:

html

<input id="phone" type="text" name="phone">
<input id="checkCode"  type="text"  name="code">
<button id="code-btn">点击发送验证码</button>

 

js代码

var code = ""; //接收验证码   
$('#code-btn').click(function(){
  var count = 5;
    var phone=$("#phone").val();//手机号码  
    var reg_phone = /1\d{10}/;
    if(!reg_phone.test(phone)){   //验证手机是否符合格式
        alert("填写手机号");
        return false;
    } 
    //开始计时  
    $("#code-btn").attr('disabled','disabled');  
    $("#code-btn").html("倒计时" + count + "秒");  
    var timer = setInterval(function(){  
      count--;
      $("#code-btn").html("倒计时" + count + "秒"); 
      if (count==0) {
        clearInterval(timer);
        $("#code-btn").attr("disabled",false);//启用按钮  
        $("#code-btn").html("重新发送验证码");
        code = "";//清除验证码。如果不清除,过时间后,输入收到的验证码依然有效 
      }
    },1000);

    //向后台发送处理数据  
    $.ajax({  
        type: "POST", //用POST方式传输  
        dataType: "text", //数据格式:JSON  
        url: '', //目标地址  
        data: "phone=" + phone + "&code=" + code,  
        error: function (XMLHttpRequest, textStatus, errorThrown) { },  
        success: function (msg){ }  
    });
});  
 


2.jQuery手机发送验证码倒计时代码方法二

<!DOCTYPE>
<html>
    <head>
        <meta charset="UTF-8">
        <script type="text/javascript" src="http://s29.xtest.tech/res/bxdapp/js/jquery.min.js"></script>
        <script type="text/javascript">
        var InterValObj; //timer变量,控制时间
        var count = 5; //间隔函数,1秒执行
        var curCount;//当前剩余秒数

        function sendMessage() {
           curCount = count;
          //设置button效果,开始计时
             $("#btnSendCode").attr("disabled", "true");
             $("#btnSendCode").val("请在" + curCount + "秒内输入验证码");
             InterValObj = window.setInterval(SetRemainTime, 1000); //启动计时器,1秒执行一次
            //向后台发送处理数据
             $.ajax({
               type: "POST", //用POST方式传输
               dataType: "text", //数据格式:JSON
               url: 'Login.ashx', //目标地址
               data: "dealType=" + dealType +"&uid=" + uid + "&code=" + code,
               error: function (XMLHttpRequest, textStatus, errorThrown) { },
               success: function (msg){ }
             });
        }

        //timer处理函数
        function SetRemainTime() {
            if (curCount == 0) {              
                window.clearInterval(InterValObj);//停止计时器
                $("#btnSendCode").removeAttr("disabled");//启用按钮
                $("#btnSendCode").val("重新发送验证码");
            }
            else {
                curCount--;
                $("#btnSendCode").val("请在" + curCount + "秒内输入验证码");
            }
        }
        </script>
    </head>
    <input id="btnSendCode" type="button" value="发送验证码" onclick="sendMessage()" /></p>
</body>
</html>




如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛

发表评论 (358人查看0条评论)
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
昵称:
最新评论
------分隔线----------------------------

快速入口

· 365软件
· 杰创官网
· 建站工具
· 网站大全

其它栏目

· 建站教程
· 365学习

业务咨询

· 技术支持
· 服务时间:9:00-18:00
365建站网二维码

Powered by 365建站网 RSS地图 HTML地图

copyright © 2013-2024 版权所有 鄂ICP备17013400号