使用指令单击按钮时触发功能。 Angular.js

时间:2017-03-28 18:09:57

标签: javascript angularjs

我的指令中有一个名为“myFunction()”的函数,另一方面,在模板中,我有一个按钮。我想当你点击按钮来运行这个功能,但是重要的是,不要使用ng-click来调用这个功能。这可能听起来很奇怪,但我有我的理由,所以我需要这样做。也许在按钮上分配一个类,类似于此类,但在指导内部,不使用控制器。

    app.directive('validate', function ($timeout) {

        return {
            restrict: 'AE',
            require: 'ngModel', 

            link: function (scope, element, attrs, ngModel) {
              if (!ngModel){
                return;          
              }

              scope.directive_function= function(){

              }

              ngModel.$parsers.push(function(val){

              })

              function myFunction= function(){
                alert("clicked");
              }

           }


        };
    });

http://jsfiddle.net/v9wvjavz/

1 个答案:

答案 0 :(得分:0)

不要理解为什么不首先使用ng-click。它在指令中的角度构建,并且在指令中使用它是完全可以的

但是,由于您需要其他方法,请使用element.bind来触发点击事件

element.bind('click', function() {
   alert("click")
});

Demo