我正在使用ui-grid来显示数据列表并显示网格我试图根据数据扩展某些行。
我想在onRegisterApi
事件中执行此操作:
scope.GridOptions = {
data: properties,
columnDefs:
[
{ name: "Full Address", field: "FullAddress" },
{ name: "Suburb", field: "Suburb" },
{ name: "Property Type", field: "PropertyType" },
{ name: "Price", field: "Price", cellFilter: 'currency'},
{ name: "Status", field: "Status" },
{ name: "Sale Type", field: "SaleType" },
{ name: "Date Created", field: "CreateDate", cellFilter: "date:'dd/MM/yyyy HH:mma'"}
],
expandableRowTemplate: 'template.html',
expandableRowHeight: 200,
onRegisterApi: (gridApi) =>
{
gridApi.expandable.expandAllRows();
}
};
问题是gridApi.expandable.expandAllRows()
扩展了所有分组的部分。我看到有一个expandRow
函数,但我不知道如何使用它代替expandAllRows
函数。我真的想扩展将列Status
设置为特定值的组。有人可以帮我解决这个问题吗?
答案 0 :(得分:6)
这是一种处理选择行扩展的方法。我创建了一个Plunker链接(http://plnkr.co/edit/CSaROQqKxYnkoxm2Tl6b?p=preview),我正在扩展所有偶数行。以类似的方式,您可以迭代数组并展开所需的行。
包括:
" -x
"控制器中的依赖
展开第一行:
grep
答案 1 :(得分:0)
可能我迟到了。 但它可能对其他人有所帮助。
我采用了与SaiGiridhar相同的插图示例,但修改了
$timeout(function() {
var rows = $scope.gridApi.grid.rows;
for(var i=0; i < rows.length; i++){
if(i%2 === 0){
var entity = (rows.length && rows[i]) ? rows[i].entity : null;
$scope.gridApi.expandable.toggleRowExpansion(entity);
}
}
});
到
$scope.$$postDigest(function() {
var rows = $scope.gridApi.grid.rows;
for(var i=0; i < rows.length; i++){
if(i%2 === 0){
var entity = (rows.length && rows[i]) ? rows[i].entity : null;
$scope.gridApi.expandable.toggleRowExpansion(entity);
}
}
});