防止表单submit或按钮button多次连续点击提交

如上例子:当我点击提交按钮触发submitQuartz()函数 防止用户连续点击提交操作

方法一:获取当时点击时间,根据时间差判断

$scope.submitQuartz=function () {
    var nowTime = new Date().getTime();
    var clickTime = $(this).attr("ctime");
    if( clickTime != 'undefined' && (nowTime - clickTime < 10000)){
           alert('操作过于频繁,稍后再试');
           return false;
    }else{
           $(this).attr("ctime",nowTime);
    }
}

方法二:利用一次性定时器$timeout

var tid;
var bClicked = false;
function doit(){
    if(tid!=null){$timeout.cancel(tid);tid=null;}
    bClicked false;
}
$scope.submitQuartz=function () {
    if(bClicked){
           alert("不要重复递交");
            return false;   
    }
    bClicked true;
    tid =$timeout("doit()", 10000);
}

还有好多方法,以上两种仅供参考!

  

  

  

  

  

你可能感兴趣的:(防止表单submit或按钮button多次连续点击提交)