欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

jQuery实现倒计时按钮功能代码分享

程序员文章站 2023-11-03 18:49:34
代码一: { wait:90, hstime:function(that){ if (this.wait == 0) { $(&...

代码一:

{ 
 wait:90,
 
 hstime:function(that){
 
   if (this.wait == 0) { 
    $('#hsbtn').removeattr("disabled").val('重发短信验证码');   
    this.wait = 90; 
   } else { 
    var _this = this;
    $(that).attr("disabled", true).val('在'+_this.wait+'秒后点此重发');
    _this.wait--; 
    settimeout(function() { 
     _this.hstime(that); 
    }, 1000) 
   } 
  },
}

代码二:

<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 <title></title>
 <script src="html/js/jquery-1.4.1.min.js" type="text/javascript"></script>
 <script type="text/javascript">
/*-------------------------------------------*/
  var intervalobj; //timer变量,控制时间
var count = 5; //间隔函数,1秒执行
var curcount;//当前剩余秒数
var code = ""; //验证码
var codelength = 6;//验证码长度
function sendmessage() {
   curcount = count;
   var dealtype; //验证方式
var uid=$("#uid").val();//用户uid
if ($("#phone").attr("checked") == true) {
    dealtype = "phone";
   }
   else {
    dealtype = "email";
   }
   //产生验证码
for (var i = 0; i < codelength; i++) {
    code += parseint(math.random() * 9).tostring();
   }
   //设置button效果,开始计时
    $("#btnsendcode").attr("disabled", "true");
    $("#btnsendcode").val("请在" + curcount + "秒内输入验证码");
    intervalobj = window.setinterval(setremaintime, 1000); //启动计时器,1秒执行一次
//向后台发送处理数据
    $.ajax({
     type: "post", //用post方式传输
     datatype: "text", //数据格式:json
     url: 'login.ashx', //目标地址
     data: "dealtype=" + dealtype +"&uid=" + uid + "&code=" + code,
     error: function (xmlhttprequest, textstatus, errorthrown) { },
     success: function (msg){ }
    });
   }
  //timer处理函数
function setremaintime() {
   if (curcount == 0) {    
    window.clearinterval(intervalobj);//停止计时器
    $("#btnsendcode").removeattr("disabled");//启用按钮
    $("#btnsendcode").val("重新发送验证码");
    code = ""; //清除验证码。如果不清除,过时间后,输入收到的验证码依然有效 
   }
   else {
    curcount--;
    $("#btnsendcode").val("请在" + curcount + "秒内输入验证码");
   }
  }
 </script>
</head>
<body>
  <input id="btnsendcode" type="button" value="发送验证码" onclick="sendmessage()" /></p>
</body>
</html>

代码三:

<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 <title>10之后注册</title>
 <script src="../js/jquery-1.6.2.min.js" type="text/javascript"></script>
 <script type="text/javascript" language="javascript">
  var leftseconds = 10;//倒计时时间10秒
  var intervalid;
  $(function () {
   $("#btn_reg").attr("disabled", true);//设置按钮不可用
   intervalid = setinterval("countdown()",1000);//调用倒计时的方法
  });
  function countdown() {//倒计时方法
   if (leftseconds <= 0) {
    $("#btn_reg").val("注册"); //当时间<=0的时候改变按钮的value
    $("#btn_reg").attr("disabled",false);//如果时间<=0的时候按钮可用
    clearinterval(intervalid); //取消由 setinterval() 设置的 timeout
    return;
   }
   leftseconds--;
   $("#btn_reg").val("请仔细阅读"+leftseconds+"秒");
  }
 </script>
</head>
<body>
<textarea cols="20" rows="8">10秒之后注册按钮才可以使用</textarea>
<input type="button" value="注册" id="btn_reg" />
</body>
</html>

代码四:

<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 <title></title>
 <script src="html/js/jquery-1.4.1.min.js" type="text/javascript"></script>
 <script type="text/javascript">

  /*-------------------------------------------*/
  var intervalobj; //timer变量,控制时间
var count = 5; //间隔函数,1秒执行
var curcount;//当前剩余秒数
var code = ""; //验证码
var codelength = 6;//验证码长度
function sendmessage() {
   curcount = count;
   var dealtype; //验证方式
var uid=$("#uid").val();//用户uid
if ($("#phone").attr("checked") == true) {
    dealtype = "phone";
   }
   else {
    dealtype = "email";
   }
   //产生验证码
for (var i = 0; i < codelength; i++) {
    code += parseint(math.random() * 9).tostring();
   }
   //设置button效果,开始计时
    $("#btnsendcode").attr("disabled", "true");
    $("#btnsendcode").val("请在" + curcount + "秒内输入验证码");
    intervalobj = window.setinterval(setremaintime, 1000); //启动计时器,1秒执行一次
//向后台发送处理数据
    $.ajax({
     type: "post", //用post方式传输
     datatype: "text", //数据格式:json
     url: 'login.ashx', //目标地址
     data: "dealtype=" + dealtype +"&uid=" + uid + "&code=" + code,
     error: function (xmlhttprequest, textstatus, errorthrown) { },
     success: function (msg){ }
    });
   }
  //timer处理函数
function setremaintime() {
   if (curcount == 0) {    
    window.clearinterval(intervalobj);//停止计时器
    $("#btnsendcode").removeattr("disabled");//启用按钮
    $("#btnsendcode").val("重新发送验证码");
    code = ""; //清除验证码。如果不清除,过时间后,输入收到的验证码依然有效 
   }
   else {
    curcount--;
    $("#btnsendcode").val("请在" + curcount + "秒内输入验证码");
   }
  }
 </script>
</head>
<body>
  <input id="btnsendcode" type="button" value="发送验证码" onclick="sendmessage()" /></p>
</body>
</html>

代码五:

最近在写短信发送验证码,就写了个js/jquery倒计时发送验证码按钮
<script language="javascript" src="jquery-1.7.1.min.js"></script>
<input type="button" id="btn" value="免费获取验证码" />
<script type="text/javascript">
var wait=10;
function time(t) {
  if (wait == t) {
   t.removeattribute("disabled");   
   t.value="免费获取验证码";
   wait = 10;
  } else {
   t.setattribute("disabled", true);
   t.value="重新发送(" + wait + ")";
   wait--;
   settimeout(function() {
    time(t)
   },
   1000)
  }
 }
 $(document).ready(function(){
 $("#btn").click( function () { 
 
time(this);
 });
});
</script>