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

时间:2021-11-04 20:54:12

防止表单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);
}

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