小程序实现简单验证码倒计时

Dagny ·
更新时间:2024-11-13
· 648 次阅读

本篇文章主要讲关于小程序验证码倒计时的功能实现,供大家参考,具体内容如下

首先是wxml部分

<form bindsubmit="regist">     <view class="vip-title">验证码</view>       <input type="text" name="verifyCode" placeholder="验证码" value="{{verifyCode}}" style="width:310rpx" />       <button class="captcha" bindtap="captcha" disabled="{{captchaDisabled}}" plain="true" disabled-class="disabled">{{captchaLabel}}</button>     </view>  </form>

样式部分:

/*提交按钮*/ form button {     margin: 30rpx;     background: #09f;     color: white; } /*文本框容器*/ .input-container {     margin: 40rpx 60rpx;     display: flex;     flex-direction: row;     justify-content: space-between;     align-items: center;     border-bottom: 1px solid #ddd;     padding-bottom: 6rpx; } /*文本框本身*/ .input-container input {     color: #999;     flex: 1;     height: 40px; } /*占位符样式*/ .input-placeholder {     color: #999; } /*清空按钮*/ .input-container image {     width: 22px;     height: 22px; } .forgot {     margin: 0 30rpx 40rpx 30rpx;     text-align: right;     font-size: 28rpx;     color: #ccc; } .captcha {     margin: 0 8rpx;     color: #fff;     fon-size: 25rpx;   p t-a .button[plain] {     color: #09f;

JS部分:

var timer = require('../../utils/timer.js'); Page({     data: {         verifyCode: '', //6617         captchaLabel: '获取验证码',         seconds: timer.length,         captchaDisabled: false     },     onLoad: function() {     },     captcha: function(e) {         var param = {             phone: this.data.phone         };         // 禁用按钮点击         this.setData({             captchaDisabled: true         });         // 立刻显示重发提示,不必等待倒计时启动         this.setData({             captchaLabel: timer.length + '秒后重新发送'         });         // 启动以1s为步长的倒计时         var interval = setInterval(() => {             timer.countdown(this);         }, 1000);         // 停止倒计时         setTimeout(function() {             clearInterval(interval);         }, timer.length * 1000);         if (this.data.seconds == timer.length) {             console.log('post');             wx.showToast({                 title: '发送成功'             });         }     }, })

timer.js :

var length = 5; function countdown(that) {     console.log('count down');     var seconds = that.data.seconds;     console.log(seconds);     var captchaLabel = that.data.captchaLabel;     if (seconds <= 1) {         captchaLabel = '获取验证码';         seconds = length;         that.setData({             captchaDisabled: false         });     } else {         captchaLabel = --seconds + '秒后重新发送'     }     that.setData({         seconds: seconds,         captchaLabel: captchaLabel     }); } module.exports = {     countdown: countdown,     length: length }

以上就是获取验证码功能的实现。

希望对大家的学习有所帮助,也希望大家多多支持软件开发网。



小程序 倒计时 程序 验证码

需要 登录 后方可回复, 如果你还没有账号请 注册新账号
相关文章