DJANGO手机验证之倒计时

需求:点击发送验证码时,发送后台匹配,如果格式不对或已经存在的,发送验证码按钮不变,还是能点发送,如果匹配正确,进入倒计时,并且按钮灰色,
用到函数setInterval 计时器函数

function settime(obj) { #定义按钮点击事件

  $.ajax({
    url:'/reg',
    type:'POST',

    data:$('#f1').serialize(), #提交所有的值,

    success:function (data) {  返回后执行的函数
    
     if(data=='ok'){ 如果返回的是OK,进入倒计时
        let num=60;  设置倒计时时间 60秒 let和var都是给变量赋值,具体的找度娘
        let t=setInterval(()=>{    #前面的let t 是接收计时器返回的数据,setInterval 是每秒+1的,let t就是把这个值赋给他
        									为什么要拿这个值,因为拿到这个值可以用这个值结束计时。
            if (num==0){
                 clearInterval(t) 如果num的值减到0  结束倒计时,一定要结束,要不然num的拿就出现负数一直加


            }else
                num-=1 如果num的值不等于0 就执行else中的,每秒num减1
            obj.setAttribute("disabled", true); obj是点击事件传入的值,setAttribute("disabled", true)设置不可点击
            obj.value=num+'秒' 把点击按钮的值 改成倒计时秒数 + 秒
            if (num==0){
              obj.removeAttribute("disabled"); 如果倒计时到0 移除不可点击
                obj.value= '发送验证' 值 改成发送验证
            }

            },1000)  1000 是setInterval  计时器函数 
        }else { 此处省略 else是判断AJAX返回值的,else表示返回不是OK。去表单显示相应的错误}

        }

   })
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值