代碼一:
{ 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();//用戶uidif ($("#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();//用戶uidif ($("#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>
新聞熱點
疑難解答