12

ui-grid の columDefs で headerCellTemplate を使用しています (ng-grid ではなく、新しい書き換え)。HTMLにはチェックボックスがあります。基本的に、すべてのチェックボックスである列のヘッダーにチェックボックスを追加しようとしているので、すべて/なしをチェックできます。セルはチェックボックスでうまく表示されます。問題は、ヘッダーのチェックボックスの ng-change がイベントを発生させないことです。さらに、ng-model の値は変更されません。コードを見ると、uiGridHeaderCell と呼ばれるディレクティブが使用されているため、イベントを飲み込んでいるだけでなく、独自のスコープ内にあると想定する必要があるため、スコープ内で変数を設定することはありません。

これを回避する方法はありますか?私が遭遇したすべての例では、ヘッダー内から独自のメソッドを呼び出そうとしている人はいません (つまり、ディレクティブのスコープ外で何かを呼び出しています)。

4

4 に答える 4

43

~ 3.0.7以降、External-Scopes は使用されなくなりました。

cellTemplate に次のように grid.appScope を追加します。

ng-click="grid.appScope.myFunction()"
于 2015-11-18T23:29:03.027 に答える