1

angular jsでwijgridコンポーネントを使用していますが、クリックイベントを実行できないという問題がありました.wijgrid htmlコンポーネントはコンパイルされていません.htmlコードを見つけてください

<wij-grid  id = "dataGrid" allow-sorting="true" data="data" columns-autogeneration-mode="none" allow-paging="true" >
  <columns>
     <column data-key="name" header-text="Name"></column>
     <column data-key="address" header-text="Address" ></column>
     <column data-key="submit" header-text="Submit"></column>
   </columns>
</wij-grid>     

そして私のAngular jsコード

$http.get(url,data).success(
        loadData);  

function loadData(responseData) {
if (responseData != null) {
    var data = responseData;
    for (index = 0; index < data.length; index++) {
        data[index].address =   data[index].addressLineOne+","+data[index].addressLineTwo;                                  
        $SubmitBtn  = "<a href='javascript:void(0);ng-click='submitCode("+data[index].reviewId+",true)'>Approve</a>";   data[index].submit=$ASubmitBtn;                                     
    }
    $scope.data = data;
    $("#content").wijtabs();
  }
}    
$scope.submitCode= function(id, status) {
alert(id+" "+status)
} 

HERE 送信コード関数が呼び出されておらず、ビュー ソースで関数が id とステータスで表示されています。つまり、wijgrid モジュールでコンパイルされていないことを意味し、解決策を提供してください。コード $compile($sumitBtn)($scope) をコンパイルしようとしましたが、動作しません。解決策を提案してください

4

2 に答える 2

0

そこでcellformatterメソッドを使用して解決策を得ました。要件に応じてコードを変更しました

$scope.formatter = function(args) {
if(args.row.dataRowIndex < 0 ) 
return false;
args.$container
.html($compile(
args.formattedValue)
($scope));
return true;    
}   
于 2013-11-28T06:23:13.113 に答える