1.验证码倒计时
方法一:
<input type=
"button"
id=
"btn"
value=
"免费获取验证码"
/>
<script>
var
wait=60;
function
time(o) {
if
(wait == 0) {
o.removeAttribute(
"disabled"
);
o.value=
"免费获取验证码"
;
wait = 60;
}
else
{
o.setAttribute(
"disabled"
,
true
);
o.value=
"重新发送("
+ wait +
")"
;
wait--;
setTimeout(
function
() {
time(o)
},1000)
}
}
document.getElementById(
"btn"
).onclick=
function
(){time(
this
);}
</script>
方法二:
<script type="text/javascript">
var clock = '';
var nums = 10;
var btn;
function sendCode(thisBtn)
{
btn = thisBtn;
btn.disabled = true; //将按钮置为不可点击
btn.value = nums+'秒后可重新获取';
clock = setInterval(doLoop, 1000); //一秒执行一次
}
function doLoop()
{
nums--;
if(nums > 0){
btn.value = nums+'秒后可重新获取';
}else{
clearInterval(clock); //清除js定时器
btn.disabled = false;
btn.value = '重新发送验证码';
nums = 10; //重置时间
}
}
</script>
JS请求验证码如下:
$.ajax({
type: "GET",
url: "../Ajax/smsrandcodetest.ashx?phone=" + phone.val() + "
&smsCodeRand=" + num,
success: function(result) {
if (result == "Y") {
alert("验证码已发送至您输入的手机号!有效期5分钟");
RemainTime();
}
else {
alert("验证码获取失败!请重新获取");
}
},
error: function() { alert("error"); }
});
for (i = 0; i < 6; i++) {
num = num + Math.floor(Math.random() * 10);
}
return num;
}
var iSecond;
var sSecond = "", sTime = "";
if (iTime >= 0) {
iSecond = parseInt(iTime % 300);
if (iSecond >= 0) {
sSecond = iTime + "秒";
}
sTime = "<span style='color:darkorange;font-size:13px;'>"
if (iTime == 0) {
clearTimeout(Account);
sTime = "<span style='color:red;font-size:12px;'>验证
}
else {
Account = setTimeout("RemainTime()", 1000);
}
iTime = iTime - 1;
}
$("#endtime").html(sTime);
}