var InterValObj; //timer变量,控制时间 var count = 60; //间隔函数,1秒执行 var curCount;//当前剩余秒数 var code = ""; //验证码 var codeLength = 6;//验证码长度 function sendMessage() { curCount = count; var cellphoneNo = $("#cellphoneNo").val(); if(checkCanSendMessage()&&checkImgCode()){ $("#btnSendCode").removeAttr("disabled"); $("#btnSendCode").removeAttr("style"); //alert(4) // 产生验证码 for ( var i = 0; i < codeLength; i++) { code += parseInt(Math.random() * 9).toString(); } // 设置button效果,开始计时 $("#btnSendCode").attr("disabled", "true"); $("#btnSendCode").html("重新获取(" + curCount + "s)"); InterValObj = window.setInterval(SetRemainTime, 1000); // 启动计时器,1秒执行一次 // 向后台发送处理数据 $.ajax({ type: "POST", // 用POST方式传输 dataType: "text", // 数据格式:JSON url: "<%=path%>/registerManage/sendMessage.action", // 目标地址 data: "cellphoneNo=" + cellphoneNo +"&code=" + code, error: function (XMLHttpRequest, textStatus, errorThrown) { }, success: function (msg){ } }); } } //timer处理函数 function SetRemainTime() { if (curCount == 0) { window.clearInterval(InterValObj);// 停止计时器 $("#btnSendCode").removeAttr("disabled");// 启用按钮 $("#btnSendCode").html("重新获取"); code = ""; // 清除验证码。如果不清除,过时间后,输入收到的验证码依然有效 $("#btnSendCode").css('color','#fff'); $("#btnSendCode").css({"background-color": "#78b0f6", "border": "0px"}); }else { curCount--; $("#btnSendCode").html("重新获取(" + curCount + "s)"); } }