js点击按钮获取验证码倒计时

    //发送验证码倒计时
    var clock = ‘‘;
    var nums = 60;
    var btn;
    $("#btnGetVerCode").click(function () {
        var flag = true;
        var phoneNum = $("#txtPhoneNum").val();
        if (phoneNum.length == 11 && /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1})|(14[0-9]{1})|)+\d{8})$/.test(phoneNum)) {
            $.ajax({
                type: "post",
                url: "/CrmCenter/GetVerCode",
                dataType: "json",
                data: { phoneNum: phoneNum },
                success: function (data) {
                    if (data == 0) {
                        alert("该手机用户不存在!");
                    }
                    else if (data == 1) {
                        alert("验证码发送失败,请联系技术人员!");
                    }
                    else {
                        alert("验证码已发送,请注意查收!");
                    }
                },
                error: function () {
                    flag = false;
                    alert("验证码发送失败!");
                }
            });
        } else {
            flag = false;
            alert("请输入正确的手机号!");
        }
        //如果已成功发送验证码 则进入倒计时
        if (flag) {
            btn = this;
            btn.disabled = true; //将按钮置为不可点击
            btn.value = nums + ‘s‘;
            clock = setInterval(doLoop, 1000); //一秒执行一次
        }
    });

    function doLoop() {
        nums--;
        if (nums > 0) {
            btn.value = nums + ‘s‘;
        } else {
            clearInterval(clock); //清除js定时器
            btn.disabled = false;
            btn.value = ‘获取验证码‘;
            nums = 60; //重置时间
        }
    }

原文地址:https://www.cnblogs.com/Alex-zqzy/p/8384275.html

时间: 2024-10-28 03:44:56

js点击按钮获取验证码倒计时的相关文章

Andorid实现点击获取验证码倒计时效果

这篇文章主要介绍了Andorid实现点击获取验证码倒计时效果,这种效果大家经常遇到,想知道如何实现的,请阅读本文 我们在开发中经常用到倒计时的功能,比如发送验证码后,倒计时60s再进行验证码的获取,为了方便以后使用,这里做个记录,讲讲倒计时器的实现. 1.先进行倒计时工具类的封装 1 public class CountDownTimerUtils extends CountDownTimer { 2 private TextView mTextView; 3 4 /** 5 * @param

对安卓获取验证码倒计时60秒Button按钮的简单封装

鉴于经常在注册获取验证码时候需要一个倒计时按钮觉得很麻烦,抽点时间写了一个TimeButton 键鼠下特性, TimeButton使用的时候跟普通Button一样没有冲突, TimeButton在倒计时的时候返回了如果没有超过剩下的时间再次进入会继续跑时哦, TimeButton里面完成了按钮的点击显示和倒计时逻辑, TimeButton在activity销毁后也会销毁不会像线程一样还在后台跑, TimeButton的显示文字和倒计时都可以自行设置当然也有默认的, 原创地址 http://wri

Repeater中添加按钮,点击按钮获取某一行的数据

1.添加编辑按钮和删除按钮 <asp:Repeater ID="Repeater1" runat="server" onitemcommand="Repeater1_ItemCommand"> <ItemTemplate> <table width="100%" border="1" cellpadding="0" cellspacing="0&q

微信小程序开发——点击按钮获取用户授权没反应或反应很慢的解决方法

异常描述: 点击按钮获取用户手机号码,有的时候会出现点击无反应或很久之后才弹出用户授权获取手机号码的弹窗,这种情况下,也会出现点击穿透的问题(详见:微信小程序开发——连续快速点击按钮调用小程序api返回后仍然自动重新调用的异常处理) 异常解析: 1. getPhoneNumber的使用: 对于 getPhoneNumber(OBJECT) API,由于小程序需要用户主动触发才能发起获取手机号接口,所以该功能不由 API 来调用,需用 <button> 组件的点击来触发(具体使用方法详见getP

前端学习——ionic/AngularJs——获取验证码倒计时按钮

 按钮功能为:点击"获取验证码"--按钮不可用-设置倒计时-60秒后重新获取. 代码借鉴于:http://plnkr.co/edit/Swj82MpJSix3a47jZRHP?p=preview 主要实现原理:点击后,设置一个$interval,每一秒更改一次剩余时间,并依赖Angular数据绑定实时显示在页面中.设置一个$timeout,60秒后将按钮初始化到可用状态. 实现代码: (1)js代码,设置成一个directive以便多次调用. angular.module('winwi

js点击按钮倒计时---servlet并接收

在制作网站注册时,遇到了 手机验证码的问题,虽然不是做前端的,但是 作业需要,自己还是老实的写了个按钮倒计时的js事件. 主要实现的功能: 点击下按钮时,开始倒数计时. 当计数为0的时候,回到原状态,不进行计数 再次点击进行计数 实现步骤: 获得id对应的标签 设置该标签value为number--;从60倒数计时 计数为0,设置value=原内容,并将number重新赋值为60 计数不为0就setTimeout重复执行该function <!DOCTYPE html> <html>

vue获取验证码倒计时,自定义组件点击事件不生效的问题

说明:部分组件使用的是element-ui 子组件 <template> <div class="count-down"> <el-button type="primary" size="small" style="width:80px;" :disabled="disabled || time > 0"> {{ text }} </el-button>

获取验证码倒计时优化 页面刷新实时倒计时

现在很多页面是需要获取验证码的,但是相信很多页面是没有做这样的优化的,比如下面这个场景: 现在访问一个注册页面,页面有一个填写手机号,获取验证码的按钮,点击获取验证码按钮之后,按钮变成灰色,然后是60倒计时效果.在60S内我无法再次点击获取验证码按钮.因为按钮是灰色的,不可点击状态. 但是,如果在倒计时任然进行时我刷新一下页面,一般的页面就会全部刷新,包括倒计时效果也没有了,按钮恢复到这最初可点击状态,这其实是不符合逻辑的.按正常逻辑是,页面任然倒计时,如果我刷新页面,倒计时任然存在,并且按钮不

获取验证码倒计时

<!doctype html><html><head> <meta charset="utf-8"> <title>广告主注册</title> <link href="__CSS__/index.css" rel="stylesheet" /> <script src="__JS__/jquery-1.9.1.min.js"><