2015-05-09 14:46
   
					JavaScript实现点击按钮后变为不可点击状态,倒计时恢复点击
表单(form)、按钮(button)是网站中常用的部件之一,在某些情况下为了避免按钮多次被点击触发,我们经常在按钮点击之后变为不可点击状态,倒计时一段时间后恢复点击状态。
多次点击有时会造成结果不正确,增加服务器负担等情况,根据程序的情况,严重的甚至会引起服务器短时间崩溃,或者浏览器崩溃。这中简单的措施虽然防止不了恶意点击,但是能最低限度的防止了一些意外点击造成的不必要的问题。
下面放出一种比较简单的实现方式:
<input type="button" value="计算" onClick="time(this)"/>
<script type="text/javascript">
var times=6;
var wait=times;
function time(b) {
    if (wait == 0) {
        b.removeAttribute("disabled");
        b.value="计算";
        wait = times;
    } else {
        b.setAttribute("disabled", true);
        b.value=wait+"秒后可以重新计算";
        wait--;
        setTimeout(function(){time(b)},1000);
    }
}
</script> 
效果演示按钮:
因为入坑不深,经验不足,如果各位大大有发现什么地方不妥,或者这段代码会在什么情况下出BUG的话,希望能够告知于我,一起探讨改进。Thanks~~~

