angular ng-click防止重复提交实例
方法一:点击后,让button的状态变为disable
js指令:
.directive('clickAndDisable',function(){
return{
scope:{
clickAndDisable:'&'
},
link:function(scope,iElement,iAttrs){
iElement.bind('click',function(){
iElement.prop('disabled',true);
scope.clickAndDisable().finally(function(){
iElement.prop('disabled',false);
})
});
}
};
})
html:
下一步 //把ng-click改为指令click-and-disable
方法二:在app.config里面,重写ng-click事件,设置一定事件内不能重复点击
$provide.decorator('ngClickDirective',['$delegate','$timeout',function($delegate,$timeout){//记得在config里注入$provide
varoriginal=$delegate[0].compile;
vardelay=500;//设置间隔时间
$delegate[0].compile=function(element,attrs,transclude){
vardisabled=false;
functiononClick(evt){
if(disabled){
evt.preventDefault();
evt.stopImmediatePropagation();
}else{
disabled=true;
$timeout(function(){disabled=false;},delay,false);
}
}
//scope.$on('$destroy',function(){iElement.off('click',onClick);});
element.on('click',onClick);
returnoriginal(element,attrs,transclude);
};
return$delegate;
}]);
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
热门推荐
10 新人红包祝福语简短精辟
11 幼师给毕业祝福语简短
12 生日高考祝福语妹妹简短
13 下飞机祝福语简短英文
14 元宵发客户祝福语简短
15 爸妈金婚文案祝福语简短
16 新郎朋友红包祝福语简短
17 虎年五一祝福语大全简短
18 出阁宴祝福语姐姐简短