2017-03-28 11 views
0

我想根據同一行中其他單元格的內容設置cellEditableCondition如何在UI網格中傳遞celleditablecondition中的row.entity?

那我該如何將row.entity傳遞給cellEditableCondition?

我試着將行作爲參數傳遞給定義oncellEditableCondition的函數,但該行對象沒有實體屬性。

我要像下面的東西:

columnDefs: [{ 
    name: 'column1', 
    field: 'name', 
    cellEditableCondition: function(row) { 
    return row.entity.lastname === 'Adams' 
    } 

}, { 
    name: 'column2', 
    field: 'lastname' 
}] 

回答

1

這小調整到您的代碼應該這樣做:

var app = angular.module('app', ['ui.grid', 'ui.grid.edit']); 
 
app.controller('MainCtrl', ['$scope', function($scope) { 
 
    $scope.gridOptions = { 
 
    columnDefs: [{ 
 
     name: 'column1', 
 
     field: 'name', 
 
     cellEditableCondition: function(scope) { 
 
     return scope.row.entity.lastname === 'Adams' 
 
     } 
 
    }, { 
 
     name: 'column2', 
 
     field: 'lastname' 
 
    }], 
 
    data: [{name: "Tim", lastname: "Harker"}, 
 
      {name: "Akash", lastname: "Adams"}] 
 
    } 
 
}]);
div[ui-grid] { 
 
    height: 130px; 
 
}
<script src="//cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.1/angular.min.js"></script> 
 
<script src="//cdnjs.cloudflare.com/ajax/libs/angular-ui-grid/4.0.2/ui-grid.min.js"></script> 
 
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/angular-ui-grid/4.0.2/ui-grid.min.css" /> 
 
<div ng-app="app" ng-controller="MainCtrl"> 
 
    <div ui-grid="gridOptions" ui-grid-edit> 
 
    </div> 
 
</div>

讓我知道如果您有任何其他問題。如果需要,很樂意提供幫助。

+0

這工作得很好.. !!!謝謝蒂姆 – Akash182

相關問題