1.图示:(为了录屏把计时器调快了自己吧计时器设成一分钟就行)
2.wxml代码:
viewclass'shouji_info'viewclass'info_list'inputplaceholder'请输入手机号'bindinput"phoneInput"/input/viewviewclass'info_list'inputclass'left'placeholder'验证码'/inputbuttonclass'rightyanzheng_btn'bindtap"bindButtonTap"disabled'{{disabled}}'style"background-color:{{color}}"{{text}}/button/view/view3.wxss代码:
page{font-size:30rpx;}.left{float:left}.right{float:right}.info_list{height:103rpx;line-height:103rpx;width:100%;border-bottom:1pxsolid#bcbcbd;padding-left:24rpx;display:inline-block;font-size:33rpx;}.shouji_infoinput{margin-top:25rpx;/*background:rebeccapurple;*/}.yanzheng_btn{width:207rpx;background:#929fff;margin-right:20rpx;height:82rpx;margin-top:12rpx;text-align:center;line-height:82rpx;border-radius:15rpx;color:#fff;font-size:33rpx;padding:010rpx;}4.js代码
//pages/biji/biji.jsPage({data:{text:'获取验证码',//按钮文字currentTime:61,//倒计时disabled:false,//按钮是否禁用phone:''//获取到的手机栏中的值},//获取手机栏input中的值phoneInput:function(e){this.setData({phone:e.detail.value})},//获取验证码按钮事件bindButtonTap:function(){varthatthis;that.setData({disabled:true,//只要点击了按钮就让按钮禁用(避免正常情况下多次触发定时器事件)color:'#ccc',})varphonethat.data.phone;varcurrentTimethat.data.currentTime//把手机号跟倒计时值变例成js值varwarnnull;//warn为当手机号为空或格式不正确时提示用户的文字,默认为空if(phone''){warn"号码不能为空";}elseif(phone.trim().length!11||!/^1[3|4|5|6|7|8|9]d{9}$/.test(phone)){warn"手机号格式不正确";}else{//当手机号正确的时候提示用户短信验证码已经发送wx.showToast({title:'短信验证码已发送',icon:'none',duration:2000});//设置一分钟的倒计时varintervalsetInterval(function(){currentTime--;//每执行一次让倒计时秒数减一that.setData({text:currentTime+'s',//按钮文字变成倒计时对应秒数})//如果当秒数小于等于0时停止计时器且按钮文字变成重新发送且按钮变成可用状态倒计时的秒数也要恢复成默认秒数即让获取验证码的按钮恢复到初始化状态只改变按钮文字if(currentTime0){clearInterval(interval)that.setData({text:'重新发送',currentTime:61,disabled:false,color:'#929fff'})}},100);};//判断当提示错误信息文字不为空即手机号输入有问题时提示用户错误信息并且提示完之后一定要让按钮为可用状态因为点击按钮时设置了只要点击了按钮就让按钮禁用的情况if(warn!null){wx.showModal({title:'提示',content:warn})that.setData({disabled:false,color:'#929fff'})return;};},})5.来个容易懂得代码片段
Page({data:{text:'获取验证码',//按钮文字currentTime:61,//倒计时disabled:false,//按钮是否禁用phone:''//获取到的手机栏中的值},//获取手机栏input中的值phoneInput:function(e){this.setData({phone:e.detail.value})},//获取验证码按钮事件bindButtonTap:function(){varthatthis;varphonethat.data.phone;varcurrentTimethat.data.currentTimeif(phone''){wx.showModal({title:'提示',content:"号码不能为空"})}elseif(phone.trim().length!11||!/^1[3|4|5|6|7|8|9]d{9}$/.test(phone)){wx.showModal({title:'提示',content:"手机号格式不正确"})}else{//当手机号正确的时候提示用户短信验证码已经发送并禁止按钮点击导致定时器多次触发的bugthat.setData({disabled:true,color:'#ccc',})wx.showToast({title:'短信验证码已发送',icon:'none',duration:2000});//设置一分钟的倒计时varintervalsetInterval(function(){currentTime--;//每执行一次让倒计时秒数减一that.setData({text:currentTime+'s',//按钮文字变成倒计时对应秒数})//如果当秒数小于等于0时停止计时器且按钮文字变成重新发送且按钮变成可用状态倒计时的秒数也要恢复成默认秒数即让获取验证码的按钮恢复到初始化状态只改变按钮文字if(currentTime0){clearInterval(interval)that.setData({text:'重新发送',currentTime:61,disabled:false,color:'#929fff'})}},100);};},})
微信小程序-完整的验证码获取倒计时效果-根据手机号是否符合要求进行判断-手机收到微信小程序验证码-微信小程序短信验证
浏览量:1326
时间:
来源:面壁思过程
版权声明
即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。
最新资讯
-

即速应用,赋能企业玩转微信小程序智慧经营
作为国内领军的智慧商业经营服务商,即速应用始终秉承“让每个企业都拥有自己的智慧店铺”的愿景,持续赋能更多企业玩转智慧经营。即速应用旗下拥有“小程序搭建工具-即速应用”、“私域流量专家-即客云”等产品,帮助商家打通互联网全生态营销闭环。 -

即客云2.0重磅更新,让微信小程序运营更简单!
即客云作为一款基于企业微信的第三方工具,现从多维度提供超过30种功能,自上线以来,已服务多家企业,受到一致好评。近期,我们根据客户反馈和市场调研正式推出升级版 即客云2.0!更新了私域运营SOP,群日历功能,批量拓客,客户雷达,消息推送,个人欢迎语,帮助企业更好运用企业微信;同时提升了社群运营工作标准化,提升运营效率,帮助企业实现客户增长,玩转私域流量。 -

零代码 + AI 双轮驱动|即速应用解锁人工智能小程序开发新范式
无需代码、无需 AI 算法功底,普通人也能快速搭建智能小程序。即速应用将人工智能与零代码开发深度融合,推出 AI 智能生成能力,用户通过自然语言描述需求,AI 自动生成小程序页面、功能模块与后台配置,覆盖商城、预约、同城、社区团购等全场景。平台内置 AI 智能推荐、智能客服、用户画像分析等能力,一键对接微信生态,打通视频号、企业微信、短信跳转,帮企业快速落地 AI 应用,抢占智慧经营先机,让每家企业都拥有 AI 驱动的智慧店铺。










