<head>
<!--参考:http://illy.iteye.com/blog/1534276 -->
<!-- http://y.dobit.top/Detail/10.html -->
<!-- http://www.haorooms.com/post/js_setTimeout -->
<!-- http://jun1986.iteye.com/blog/1136389 -->
<script language="javascript">
/*function submitApprove(a0) {
disabledButton();
MyPeriodicalExecuter(evt);
}
function disabledButton(){
var inputs = document.getElementsByTagName("button");
for(var i = 0;i<inputs.length;i++){
if(inputs[i].id.toLowerCase()=="test")
inputs[i].disabled=true;
}
} function MyPeriodicalExecuter(evt){
succ.obj=evt;
succ.loop=0;
sh=setInterval(succ,1000);
} function succ(){
var str="禁止连续点击,"
with(arguments.callee){
obj.value=str+"("+(loop++)+"/15)秒后再试";
if (loop > 5 ){
enabledButton();
obj.value=" 下载 ";
clearInterval(sh);
return;
}
}
} function enabledButton(){
var inputs = document.getElementsByTagName("button");
for(var i = 0;i<inputs.length;i++){
if(inputs[i].id.toLowerCase()=="test")
inputs[i].disabled=false;
} }*/ /*function submitApprove(evt) {
console.log('evt ' + evt);
disabledButton(evt);
console.log('evt execute');
MyPeriodicalExecuter();
//enabledButton(evt);
}
function disabledButton(evt){
//var inputs = document.getElementById(evt);
var text = document.getElementById(evt);
console.log('getElementById');
text.disabled=true;
} function MyPeriodicalExecuter(){
//succ.obj=evt;
succ.loop=0;
console.log('111');
sh=setInterval(succ,1000);
console.log('777');
} function succ(){
console.log('222');
with(arguments.callee){
console.log('333');
console.log('loop = '+loop);
loop++;
//obj.value=str+"("+(loop++)+"/15)retry";
if (loop > 5 ){
console.log('444');
enabledButton();
console.log('555');
//obj.value=" down ";
clearInterval(sh);
console.log('666');
return;
}
}
} function enabledButton(){
console.log('enabledButton evt ');
var text = document.getElementById("newtest1");
console.log('text getElementById newtest1');
text.disabled=false; }*/
function submitApprove(evt) {
console.log('evt ' + evt);
disabledButton(evt);
console.log('evt execute');
MyPeriodicalExecuter();
//enabledButton(evt);
}
function disabledButton(evt){
//var inputs = document.getElementById(evt);
var text = document.getElementById(evt);
console.log('getElementById');
text.disabled=true;
} function MyPeriodicalExecuter(){
succ.loop=0;
console.log('111');
sh=setInterval(succ,1000);
//sh=setTimeout(succ,1000);
console.log('777');
} function succ(){
console.log('222');
with(arguments.callee){
console.log('333');
console.log('loop = '+loop);
loop++;
if (loop > 5 ){
console.log('444');
enabledButton();
console.log('555');
clearInterval(sh);
//clearTimeout(sh);
console.log('666');
return;
}
}
} function enabledButton(){
console.log('enabledButton evt ');
var text = document.getElementById("newtest1");
console.log('text getElementById newtest1');
text.disabled=false;
}
</script> <!--<script language="javascript">function submitApprove(a0){ console.log('aaaa'); window.open('https://www.baidu.com','newwindow')}</script>--> </head> <!--<body class="xg" onload="return _chain('_checkLoad(event)','Linit();',this,event)" onunload="_checkUnload(event)">--> <!--<button id="Test" title="测试" class="x7g" style="background-image:url(/OA_HTML/cabo/images/swan/btn-bg1.gif)" onclick="return _chain('javascript:submitApprove(this);','submitForm(\'DefaultFormName\',1,{\'evtSrcRowIdx\':\'\',\'evtSrcRowId\':\'\',event:\'testJSFunction\',source:\'Test\'});return false;',this,event,true)" type="button">测试</button> -->
<!--<button id="test" title="测试" class="x7g" style="background-image:url(/OA_HTML/cabo/images/swan/btn-bg1.gif)" onclick="return _chain('downLoad(this)','submitForm(\'DefaultFormName\',1,{\'evtSrcRowIdx\':\'\',\'evtSrcRowId\':\'\',event:\'testJSFunction\',source:\'Test\'});return false;',this,event,true)" type="button">测试</button>--> <!--浏览器默认生成的源码-->
<!--<button id="Test" title="测试" class="x7g" style="background-image:url(/OA_HTML/cabo/images/swan/btn-bg1.gif)" onclick="return _chain('javascript:submitApprove(this);','submitForm(\'DefaultFormName\',1,{\'evtSrcRowIdx\':\'\',\'evtSrcRowId\':\'\',event:\'testJSFunction\',source:\'Test\'});return false;',this,event,true)" type="button">测试</button>--> <!--<button id="FinSign" title="财务审核" class="x7g" style="background-image:url(/OA_HTML/cabo/images/swan/btn-bg1.gif)" onclick="javascript:submitApprove(this);submitForm('DefaultFormName',1,{'evtSrcRowIdx':'','evtSrcRowId':'',event:'finSignEvent',source:'FinSign'});return false;" type="button">财务审核</button>--> <!--<button id="testtest" title="测试" class="x7g" style="background-image:url(/OA_HTML/cabo/images/swan/btn-bg1.gif)" onclick="return _chain('javascript:submitApprove(this);','submitForm(\'DefaultFormName\',1,{\'evtSrcRowIdx\':\'\',\'evtSrcRowId\':\'\',event:\'testJSFunction\',source:\'Test\'});return false;',this,event,true)" type="button">测试 ceshi测试啊测试</button>--> <!--<button id="TestSbtn" title="" class="x7g" style="background-image:url(/OA_HTML/cabo/images/swan/btn-bg1.gif)" onclick="return _chain('javascript:submitApprove(this);','submitForm(\'DefaultFormName\',1,{\'_FORM_SUBMIT_BUTTON\':\'TestSbtn\'});return false',this,event,true)" type="submit">TestSbtn</button>--> <button id="test" title="测试" onclick="javascript:submitApprove(this);" type="button">测试</button> <button id="newtest" type="button" onClick="submitApprove(this.id)">newTest</button> <button id="newtest1" type="button" onClick="submitApprove(this.id)">newTest22</button> <input type="button" value="下载" /> </body>

以参数的形式获取elementId而不是直接在代码中写死。

<head>
<!--参考:http://illy.iteye.com/blog/1534276 -->
<!-- http://y.dobit.top/Detail/10.html -->
<!-- http://www.haorooms.com/post/js_setTimeout -->
<!-- http://jun1986.iteye.com/blog/1136389 -->
<script language="javascript"> var buttonId ='buttonId';
function submitApprove(evt) {
console.log('evt ' + evt);
console.log('buttonId ' + buttonId);
buttonId = evt;
console.log('buttonId ' + buttonId);
disabledButton(evt);
console.log('evt execute');
MyPeriodicalExecuter();
//enabledButton(evt);
}
function disabledButton(evt){
//var inputs = document.getElementById(evt);
var text = document.getElementById(evt);
console.log('getElementById');
text.disabled=true;
} function MyPeriodicalExecuter(){
succ.loop=0;
console.log('111');
sh=setInterval(succ,1000);
//sh=setTimeout(succ,1000);
console.log('777');
} function succ(){
console.log('222');
with(arguments.callee){
console.log('333');
console.log('loop = '+loop);
loop++;
if (loop > 5 ){
console.log('444');
enabledButton();
console.log('555');
clearInterval(sh);
//clearTimeout(sh);
console.log('666');
return;
}
}
} function enabledButton(){
console.log('enabledButton evt ');
console.log('enabledButton buttonId ' + buttonId);
var text = document.getElementById(buttonId);
text.disabled=false;
}
</script> </head> <button id="test" title="测试" onclick="javascript:submitApprove(this);" type="button">测试</button> <button id="newtest" type="button" onClick="submitApprove(this.id)">newTest</button> <button id="newtest1" type="button" onClick="submitApprove(this.id)">newTest22</button> <input type="button" value="下载" /> </body>

  

使用js使某个按钮在5秒内不能重复点击的更多相关文章

  1. OAF 使用 javascript 使某个按钮在5秒内不能重复点击

    首先要保证按钮是BUTTON,并且按钮事件设置firePartialAction. public class CuxXXXXPGCO extends OAControllerImpl { public ...

  2. 限制 button 在 3 秒内不可重复点击

    在下载或者上传文件过程中避免重复点击带来的多次同样的请求造成资源浪费,限制 button 的点击次数是很有必要的. 1. 增强用户体验,2. 减轻服务器压力. HTML 代码 <button i ...

  3. js 实现控制点击事件在特定的毫秒内 只允许点击一次(防止重复点击)

    代码 第一种方法 var forbidRepeartClick = (function(){ var instance = null; var canClick = true; function Bu ...

  4. VS2010 使用时选择代码或双击时出错,点击窗口按钮后VS自动重启问题

    VS2010 使用时选择代码或双击时出错崩溃,点击窗口按钮后VS自动重启问题 下载补丁,打上补丁之后,重启电脑,解决了问题. WindowsXP的下载地址:Windows XP 更新程序 (KB971 ...

  5. JS实现倒计时(天数,时,分,秒)

    <!DOCTYPE html> <html> <head>   <meta charset="utf-8" >   <titl ...

  6. 【转载】vue.js实现格式化时间并每秒更新显示功能示例

    引用:https://www.jb51.net/article/143351.htm 这篇文章主要介绍了vue.js实现格式化时间并每秒更新显示功能,结合实例形式分析了vue.js时间格式化显示与基于 ...

  7. js使浏览器窗口最大化(适用于IE的方法)

    这里使用的方法是IE的私有特性,只能在IE中有效.主要是window.moveTo和 window.resizeTo方法.       效果和点击最大化按钮差不多,有一点区别.点击最大化按钮后,浏览器 ...

  8. Jquery插件实现点击获取验证码后60秒内禁止重新获取

    通过jquery.cookie.js插件可以快速实现“点击获取验证码后60秒内禁止重新获取(防刷新)”的功能 先到官网(http://plugins.jquery.com/cookie/ )下载coo ...

  9. 安装Intel HAXM为Android 模拟器加速,30秒内启动完成

    要求 必备知识 windows 7 基本操作. 运行环境 windows 7(64位); Android Studio 1.1.0;JDK 1.7.0_75(64位);android-sdk_r24 ...

随机推荐

  1. CoreAnimation动画(CALayer动画)

    #pragma mark - CABasicAnimation动画 - (IBAction)basicAnimation:(UIButton *)sender { // 1.创建动画对象 CABasi ...

  2. js 毫秒 转 时间 日期 yyyy-mm-dd hh-mm-ss

    //格式化时间 var format = function(time, format){ var t = new Date(time); var tf = function(i){return (i ...

  3. 记录JVM垃圾回收算法

    垃圾回收算法可以分为三类,都基于标记-清除(复制)算法: Serial算法(单线程) 并行算法 并发算法 JVM会根据机器的硬件配置对每个内存代选择适合的回收算法,比如,如果机器多于1个核,会对年轻代 ...

  4. Linux之格式化与挂载

    格式化与挂载 一块硬盘要想被使用,要经过分区,格式化,挂载这三个步骤.前面我们讲过MBR分区和GPT分区. 下面我们就来讲一下如果格式化一个分区.其实很简单,一句话就能搞定了. 首先来查看一下sdb盘 ...

  5. windows下使用tomcat部署网站

    一.配置过程: 1.  配置java环境(之前已装过,跳过此步骤) 2.  下载tomcat (1)找到支持此java版本的tomcat版本: (2)下载与当前系统对应的安装文件 http://tom ...

  6. nginx的配置总结

    总体而言,nginx的配置比起apache来是要简洁很多,而言容易理解得多的,另外官网的文档也十分的简洁易懂.我们先看一个简化版的配置文件nginx.conf: #user nobody; worke ...

  7. 详细的图文教程来实现 eclipse环境下如何配置tomcat,并且把项目部署到Tomcat服务器上

    很多初学,尤其自学JavaWeb的朋友首次在eclipse下配置tomcat时,总会有种难下手的感觉,在此,通过图文解说的方法,最直观的向大家演示一遍该配置过程. 第一部分:eclipse环境下如何配 ...

  8. MyEclipse10 离线图文安装SVN插件教程

    一.下载SVN插件subclipse 1.下载 下载地址:http://subclipse.tigris.org/servlets/ProjectDocumentList?folderID=2240 ...

  9. 烂泥:KVM、kickstart与FTP集成

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 在上一篇文章中,我们介绍了有关KVM.kickstart与NFS集成的相关内容.在这节我们将继续介绍FTP与KVM.kickstart集成的相关操作. ...

  10. Swift 学习笔记 enum 枚举类型

    异端,异端啊,我感觉这是map吧? enum ATMStatus { case Success(Int) case Error(String) } func withdraw(amount: Int) ...