0

cell templateのプロパティを使用していますng-grid。ディレクティブで 1 つの関数を定義しています。同じディレクティブ内で、自分のgrid-options. コードは次のとおりです。

data: 'mydata',
columnDefs: [

{field:'Timeout', displayName:'Delay', cellTemplate: '<a href="" 
ng-click= "Report(Alert,Key,1000,1,1);"><div class=\"ngCellText\">{{row.getProperty(col.field)}}</div></a>'}   
        ]

関数Reportも同じディレクティブ内で定義されています。

ng-clickクリックされるたびに機能します。関数は呼び出されていますが、私が渡している入力変数 (AlertおよびKey) は関数に渡されていませんが、残りの 3 つのパラメーター1000,1,1は渡されています。 Alert私が渡したいハードコードされた文字列です。 Key「mydata」の整数値の配列の 1 つです。alert関数でこれら2つの特定の値を使用して確認したところ、未定義と表示されています。

関数を正しく呼び出すのを手伝ってください。前もって感謝します。

4

1 に答える 1

1

このようなものが欲しいですか:

  $scope.Report=function(msg,key,v1,v2,v3){
    //use v1, v2, v3 for whatever you like
    alert(msg+':'+key);
  };

  $scope.gridOptions = {
    data: 'myData',
    columnDefs: [
      {
        field: 'name',
        displayName: 'Delay',
        cellTemplate: '<a href="" ng-click= "Report(\'Alert\',row.entity.age,1000,1,1);"><div class=\"ngCellText\">{{row.getProperty(col.field)}}</div></a>'
      }, {
        field: 'age'
      }
    ]
  };

ハードコードされた文字列 (msg) は、エスケープされた引用符で囲む必要があることに注意してください。キーの例として年齢を使用しました。この例では数値であるため、引用符は必要ありません。

こちらがプランカー

于 2014-08-03T09:19:13.140 に答える