私はAngularJSが初めてで、遊んでいるときに問題に遭遇しました....私は次のようなテーブルを持っています:
...
<tr ng-repeat="line in lines">
<remove-line>
<input id="line_id" type="hidden" value="{{line.id}}">
<td id="sn">{{$index+1}}</td>
<td>{{line.ref}}</td>
<td>{{line.label}}</td>
<td class="tva">{{line.tva}}</td>
<td class="qty">{{line.qty}}</td>
<td class="unity">{{line.unity}}</td>
<td class="prix">{{line.prix}}</td>
<td>{{line.prix*line.qty}}</td>
<td><button class="btn" id= "remove"><i class="icon-remove"></i> </button></td>
</remove-line>
</tr>
...
カスタムディレクティブを使用して、削除ボタンをクリックしたときにいくつかの動作が必要です。AngularJS コードは次のようになります。
angular.module('myApp', []).directive('removeLine',function(){
var remove = function(){
...
alert ("Oops removed!");
}
return {
restrict: 'E',
link : function(scope,element, attrs){
$("#remove").on('click', remove);
}
};
});
しかし、これは機能しません....テーブルの削除ボタンをクリックしても何も起こりません.....しかし、ボタンがタグの外にある場合、これはすべて正常に機能します。なぜそうであり、どのように機能させるのですか?
私の状況を説明するために jsfiddle を作成しましたhttp://jsfiddle.net/alexrussinov/cs8RP/71/。奇妙なことに、このコードをローカル マシンでテストすると、テーブル内のボタンが機能しませんが、その下にある 2 つのボタンは正常に機能します。jsfiddle では、表にもその下にもありませんが、機能しません。