我的编程空间,编程开发者的网络收藏夹
学习永远不晚

angular中怎么利用ng-click防止重复提交

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

angular中怎么利用ng-click防止重复提交

这篇文章给大家介绍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:

复制代码 代码如下:


<button type="button" class="btn btn-info btn-bordered waves-effect w-md waves-light" click-and-disable="next()">下一步</button>   //把 ng-click 改为指令click-and-disable

方法二:在app.config里面,重写ng-click事件,设置一定事件内不能重复点击

$provide.decorator('ngClickDirective',['$delegate','$timeout', function ($delegate,$timeout) { //记得在config里注入$provide
      var original = $delegate[0].compile;
      var delay = 500;//设置间隔时间
      $delegate[0].compile = function (element, attrs, transclude) {

        var disabled = false;
        function onClick(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);

        return original(element, attrs, transclude);
      };
      return $delegate;
    }]);

关于angular中怎么利用ng-click防止重复提交就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

angular中怎么利用ng-click防止重复提交

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

php怎么防止重复提交

在PHP中防止重复提交的方法有多种,以下是几种常见的方法:1. 使用Token验证:可以在表单中添加一个隐藏的字段,用于存储一个唯一的Token值。在表单提交时,将Token值一同提交到后台,在后台验证Token的有效性,如果有效则执行相应
2023-08-17

Spring Boot中怎么防止重复提交

这期内容当中小编将会给大家带来有关Spring Boot中怎么防止重复提交,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。思路1、自定义注解 @NoRepeatSubmit 标记所有Controller中的
2023-06-19

浅谈利用Session防止表单重复提交

解决项目中表单重复提交的问题,在平常的项目中有以下几种可能出现表单重复提交的情况,比如说:1.由于服务器缓慢或者网络延迟的原因,重复点击提交按钮2.已经提交成功,但是还不停刷新成功页面3.已经提交成功,通过回退,再次点击提交按钮。这些情况都
2023-05-30

java后端怎么防止重复提交

在Java后端防止重复提交的方式有以下几种:1. 生成唯一的表单标识符(token):在表单页面中生成一个唯一的标识符,并将其存储在会话(session)或隐藏表单字段中。当用户提交表单时,后端验证该标识符是否有效,如果有效则处理请求,否则
2023-09-04

redis怎么防止重复提交操作

为防止重复提交操作,可以使用redis的事务机制和原子操作来实现。以下是一种常见的方法:使用Redis的事务机制和WATCH命令来实现原子性操作。通过WATCH命令监视一个或多个键,如果有其他客户端对这些键进行了修改,那么事务就会失败。在执
redis怎么防止重复提交操作
2024-04-09

PHP中怎么通过session防止表单重复提交

本篇文章给大家分享的是有关PHP中怎么通过session防止表单重复提交,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。当前表单页面is_submit设为0SESSION_STA
2023-06-04

PHP中怎么预防表单重复提交

本篇文章给大家分享的是有关PHP中怎么预防表单重复提交,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。1.使用客户端JS脚本提到客户端脚本,经常使用的是JavaScript进行常
2023-06-17

Java中怎么利用volatile防止指令重排

这篇文章将为大家详细讲解有关Java中怎么利用volatile防止指令重排,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。什么是指令重排?计算机在执行程序时,为了提高性能,编译器和处理器一般会
2023-06-20

Android应用中怎么防止按钮重复点击

本篇文章给大家分享的是有关Android应用中怎么防止按钮重复点击,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。首先将这块提取为工具类(方便接下来的调用),现在就起名为:But
2023-05-31

Android 中怎么利用多线程重复启动与停止服务

这篇文章将为大家详细讲解有关Android 中怎么利用多线程重复启动与停止服务,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Android 多线程实现重复启动与停止的服务多线程环境下为了避免
2023-05-30

编程热搜

目录