2017-03-28 10 views
1

私は私の指示に次のコードを持っている:html ng-clickからリンク関数メソッドを呼び出す方法は?

testModule.directive('TestOne',function(){ 
return{ 
replace: true, 
controller: 'TestCtrl', 
link: function(scope, element, attrs){ 

element.on('click', function(e) { 
        //my own code is there    
       }); 

} 
} 
} 

私は(=「)(MyTestには」NGクリック)HTMLで、以下のイベントでNGクリックで上記のクリック機能を呼び出すために望んでいました。上記のディレクティブの要素クリック機能で自分の関数要件を自分の要件に従って実行できるように、どうやって呼び出すか、正確に書くことができますか?

HTML:事前に

<div test-one ng-repeat="items in testjson"> 

<div class="title">{{items.name}}</div> 
<div class="context-menu"> 
<ul> 
<li ng-click="mytest()">TestFunction</li> 
</ul> 
</div> 

</div> 

感謝。

答えて

2

まずその後のスコープ機能の作成

directive('testOne',function(){

directive('TestOne',function(){

シンプルなディレクティブの最初の文字を作るリンク機能の内部でNGをクリック

.directive('testOne',function(){ 
     return{ 
      restrict : 'A', 
      replace: true, 
      link: function(scope, element, attrs){ 
      scope.mytest = function() { 
      console.log("working")   
      } 

      } 
     } 
    }) 

デモ

angular.module("app",[]) 
 
.controller("ctrl",function($scope){ 
 
$scope.testjson = [{"name":"sss"},{"name":"ssss"}] 
 

 
}).directive('testOne',function(){ 
 
    return{ 
 
     restrict : 'A', 
 
     replace: true, 
 
     link: function(scope, element, attrs){ 
 
     scope.mytest = function() { 
 
     console.log("working")   
 
     } 
 

 
     } 
 
    } 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-app="app" ng-controller="ctrl"> 
 
<div test-one ng-repeat="items in testjson"> 
 

 
<div class="title">{{items.name}}</div> 
 
<div class="context-menu"> 
 
<ul> 
 
<li ng-click="mytest()">TestFunction</li> 
 
</ul> 
 
</div> 
 

 
</div> 
 
</div>

関連する問題