2016-07-29 88 views
0

我正在使用下面的rowTemplate。我想在Valid == true时应用css类“ui-grid-invalid-upload-row”。不知何故,它不工作。基于单元格值的UI网格RowTemplate颜色

<div ng-repeat="(colRenderIndex, col) in colContainer.renderedColumns track by col.colDef.name" class="ui-grid-cell" ng-class="{ \'ui-grid-row-header-cell\': col.isRowHeader, \'ui-grid-invalid-upload-row\': col.colDef["Value"]==true }" ui-grid-cell></div> 
+0

你忘了张贴您正在使用 – doge1ord

+0

可以请你分享更多代码的rowTemplate。因为这将有助于看到田野 –

回答

0

我得到了上面的工作,我用下面的颜色来改变row.entity。[FieldName]。张贴在这里希望有人会从它那里得到帮助,

function rowTemplate() { 
     return $timeout(function() { 
      return '<div ng-class="{ \'ui-grid-invalid-upload-row\': grid.appScope.rowFormatter(row) }">' + 
         ' <div ng-repeat="(colRenderIndex, col) in colContainer.renderedColumns track by col.colDef.name" class="ui-grid-cell" ng-class="{ \'ui-grid-row-header-cell\': col.isRowHeader }" ui-grid-cell></div>' + 
        '</div>'; 
     }); 
    } 

$scope.rowFormatter = function (row) { 
    return row.entity.Value === 'true'; 
}; 
0

使用row.entity.yourfieldname如果你想要的颜色

ng-class="{\'green\':true, \'blue\':row.entity.count==1 }"

一个工作plunker是here


如果你只想要应用类细胞使用cellClass代替

$scope.gridOptions = { 
    enableSorting: true, 
    data:'myData', 
    columnDefs: [ 
     { field: 'sv_name', displayName: 'Nombre'}, 
     {field: 'sv_code', displayName: 'Placa'}, 
     { field: 'count', displayName: 'Cuenta', 
     cellClass: function(grid, row, col, rowRenderIndex, colRenderIndex) { 
      if (grid.getCellValue(row,col) == 1) { 
      return 'blue'; 
      } 
      return 'green'; 
     } 
     } 
    ] 
    }; 

一个工作pluncker是here

让我知道,如果它可以帮助你。

0

我将col.colDef["Value"]==true更改为col.colDef[\'Value\']。双引号过早终止ng-class声明

<div ng-repeat="(colRenderIndex, col) in colContainer.renderedColumns track by col.colDef.name" class="ui-grid-cell" ng-class="{ \'ui-grid-row-header-cell\': col.isRowHeader, \'ui-grid-invalid-upload-row\': col.colDef[\'Value\'] }" ui-grid-cell></div> 

编辑 既然你想基于单元格的值来改变颜色,我想你应该修改cellTemplate代替。

相关问题