2016-11-16 4 views
0

私は角型でtypescirptを使用しています。角型の文字指令、要素内のdivを見つける

私はただのdiv含むテキストとクラス名が「ブロック-近い」私は閉じるボタンにクリック機能を追加する必要が

と閉じるボタンでディレクティブを作成しました。

ディレクティブ内にあるボタンにクリックイベントを追加するにはどうすればよいですか。私は

angular.element('.block-close').on('click', function(){ 
     alert('here'); 
    }); 

    angular.element(document).find('.block-close').on('click', function(){ 
     alert('here'); 
    }); 

    (()=>{ 

     class MyDirective implements ng.IDirective{ 

      public restrict = 'E'; 
      public scope = {}; 
      public controller = 'MyController'; 
      public controllerAs = 'myCtrl'; 
      public bindToController = true; 
      public templateUrl = "mysite.html"; 

      constructor(){ 

      } 

      link = (scope, element, attrs) => { 
       angular.element('.block-close').on('click', function(){ 
        alert('here'); 
       }); 
      }; 

     } 

     angular.module('myMod').directive('myDirective',()=> new MyDirective()); 

    })(); 

答えて

0

のようなものを試してみた

私はちょうどあなたの「mysite.htmlは」この

<div> 
<input type="button" value="close" class="block-close"/> 
</div> 

のようなコードを持っていることを前提としていますそして、あなたが処理したい追加ボタンのイベントをクリックしていますクラス "ブロッククローズ"。

は、実際には、リンク関数内で、あなたはこれだけ、以下に示す一つの機能を追加し

link = (scope, element, attrs) => { 
       scope.closeClicked =() =>{ 
          alert("clicked.."); 
        } 
      }; 

<div> 
    <input type="button" value="close" ng-click="closeClicked()" class="block-close"/> 
</div> 
以下のようなあなたの「mysite.html」を更新し、その指示の範囲にアクセスすることができます
関連する問題