微信小程序实现验证码倒计时
时间:2022-12-20 10:12:34|栏目:JavaScript代码|点击: 次
本文实例为大家分享了微信小程序实现验证码倒计时的具体代码,供大家参考,具体内容如下
wxml代码:
<view class='container'> <form bindsubmit='denglu'> <view class='list'> <view class='left'> <label>手机号:</label> <input type='number' name="tel" bindinput='shj' maxlength='11' placeholder='请输入手机号'></input> </view> <view class='right'></view> </view> <view class='list border'> <view class='left'> <label>验证码:</label> <input type='number' name="code" placeholder='请输入验证码'></input> </view> <view class='right'> <button class='send' wx:if="{{isShow}}" catchtap='send'>发送验证码</button> <button class='send' disabled='{{true}}' wx:else>{{countdown}}秒后重新发送</button> </view> </view> <button form-type='submit' class='btn'>登录</button> </form> </view>
js代码:
const app = getApp() Page({ /** * 页面的初始数据 */ data: { countdown: 60, isShow:true }, //倒计时 count:function(that){ var interval = setInterval(function () { var countdown = that.data.countdown; if (countdown == 0) { that.setData({ isShow: true, countdown: 60 }) clearInterval(interval) } else { countdown--; that.setData({ isShow: false, countdown: countdown }) } }, 1000) }, //设置手机号 shj: function (e) { this.setData({ tel: e.detail.value }) }, //获取验证码 send: function () { var that=this; wx.showToast({ title: '验证码发送成功', icon: 'none', duration: 1000, success: function () { that.count(that) } }) }, //登录 denglu:function(e){ console.log(e.detail.value) }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { }, })
wxss代码:
.list{ background-color: white; font-size: 32rpx; padding: 20rpx 30rpx; display: flex; justify-content: space-between; align-content: center; align-items: center } .border{ border-top: 1rpx solid #f4f4f4 } .left{ display: flex; align-content: center; align-items: center } .left>label{ width: 140rpx } .left>input{ font-size: 30rpx } .right{ width:240rpx; text-align: right; color: #ff9900; font-size: 30rpx } .send{ background-color: #3296fa; color: white; line-height: 60rpx; font-size: 30rpx; border-radius: 0; padding-left: 0; padding-right: 0 } .btn{ background-color: #3296fa; color: white; line-height: 90rpx; font-size: 32rpx; border-radius: 0; margin-top: 100rpx; }