JS 倒计时获取验证码按钮

vue中的写法实现倒计时按钮
常用于发送验证码

/* css */
.yzm{
    width: 150px;
    height: 30px;
    background-color: #f00;
    border: 0;
    outline: 0;
    border-radius: 15px;
    color: #fff;
}

.dis{
    background-color: #eee;
    color: #ccc;
    cursor: not-allowed;
}
<!-- html -->
<input ref="yzm" @click="disclick" class="yzm" :class="dis? 'dis':''" :value="value" type="button" />
//data
value:'',//按钮上的字
time:'',//定时器名字,方便清除

// js methods
disclick(){
	// 按钮变化                   
	that.dis=1;
    that.$refs.yzm.disabled=true
    var i=10// 验证码重来获取时间
    that.value=i+'秒';
    that.time=setInterval(()=>{
      if(i==1){
        clearInterval(that.time);
        that.time=null;
        that.$refs.yzm.disabled=false;
        that.dis=0;
        that.value='获取验证码'
      }else{
        i--;
        that.value=i+'秒';
      }
    },1000)

	// 下面可发送请求(即调用发送验证码接口)
	// ...
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值