jq-发送短信倒计时插件

短信验证码初始化

$.getScript('javascript/pages/send_msg_code.js', function() {
        /**checkMsgCodeBtn为发送验证码上的id*/
        $("#checkMsgCodeBtn").sendMsgCodeFun({
          url:'json/ct_act_volunteer_detail.json'/*验证码获取接口地址*/
        });
      });

发送短信组件

$.fn.sendMsgCodeFun=function(options){
  var defaults={
    phoneId:'telPhone', /**手机号输入框上的id*/
    count:60,
    url:'',
    callback:null,
    params:{}
  },
  opts=$.extend(defaults,options);
  var _self=$(this);
  var timer,curCount;
  $(this).on('tap',function(){
    if(!checkForm.checkPhone(opts.phoneId,true)) {
      return;
    }else{
      if (!_self.hasClass("disabled")) {
        $.ajax({
          type:"POST",
          url:opts.url,
          data:{telphone:$("#"+opts.phoneId).val()},
          dataType:"json",
          success:function(data){
            if (data.status=='1') {//成功
              sendMessage();
              } else { //失败
                alert(data.msg);
              }
          },
          error:function() {
            alert('验证码获取失败,请重新获取!');
          }
        });
      };
    };
  });
  var sendMessage=function() {
    curCount = opts.count;
    _self.addClass("disabled");
    _self.html("重新获取(" + curCount + ")");
    timer = window.setInterval(SetRemainTime, 1000);
  }
  var SetRemainTime=function() {
    if (curCount == 0) {
      window.clearInterval(timer);
      _self.removeClass("disabled");
      _self.html("重新发送");
    } else {
      curCount--;
      _self.html("重新获取(" + curCount + ")");
    }
  }
}

猜你喜欢

转载自blog.csdn.net/pinhmin/article/details/129008613