javascript - 验证码倒计时
阿神
阿神 2017-05-19 10:33:06
0
1
582
<input type="button" id="btn" value="免费获取验证码" onclick="settime(this)" /> 
<script type="text/javascript"> 
var countdown=60; 
function settime(val) { 
if (countdown == 0) { 
val.removeAttribute("disabled");  
val.value="免费获取验证码"; 
countdown = 60; 
} else { 
val.setAttribute("disabled", true); 
val.value="重新发送(" + countdown + ")"; 
countdown--; 
} 
setTimeout(function() { 
settime(val) 
},1000) 
} 
</script> 

麻烦问下这个代码使用后当时间超时时,方法会自动循环,但是删除setTimeout方法后,代码功能无法实现,请问如何解决?

阿神
阿神

闭关修行中......

全部回复(1)
PHPzhong

添加一个return ;就可以了。我试了下。
<input type="button" id="btn" value="免费获取验证码" onclick="settime(this)" />
<script type="text/javascript">

var countdown=60; 
function settime(val) { 
if (countdown == 0) { 
    val.removeAttribute("disabled");  
    val.value="免费获取验证码"; 
    countdown = 60; 
    return ; // 结束循环
} else { 
    val.setAttribute("disabled", true); 
    val.value="重新发送(" + countdown + ")"; 
    countdown--; 
} 
setTimeout(function() { 
    settime(val) 
    },1000) 
} 

</script>

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板