加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs:防止路线变化

发布时间:2020-12-17 18:03:16 所属栏目:安全 来源:网络整理
导读:我已尝试在我的控制器中执行以下操作: $scope.$on("$routeChangeStart",function (event,next,current) { if (!confirm('are you sure ?')) { event.preventDefault(); } }); 但它不起作用.那不应该是这样做的吗? 解决方法 我会在你的链接上加上一个指令,
我已尝试在我的控制器中执行以下操作:

$scope.$on("$routeChangeStart",function (event,next,current) {
       if (!confirm('are you sure ?')) {
         event.preventDefault();           
       }
  });

但它不起作用.那不应该是这样做的吗?

解决方法

我会在你的链接上加上一个指令,在更改路线之前应该确认.
我只是在JSFiddle中制作原型,我没有测试它.但我认为,这应该是正确的方法.

(function (angular) {
  module = angular.module('confirm',[]);
  ConfirmDirective = function () {
      return {
        restrict: 'A',link: function (scope,elm,attrs,ctrls) {
            angular.element(elm).bind('click',function (event) {
                alert("Sure?");
                event.preventDefault();
                return false; //or true,depends on you
            });
        }
    };
  };
  module.directive("confirm",ConfirmDirective);
}(angular));

http://jsfiddle.net/L6xBF/3/

检查并试一试.

问候

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读