gpt4 book ai didi

angularjs - angular-ui ng-grid 如何使聚合行成为可编辑行

转载 作者:行者123 更新时间:2023-12-02 23:40:28 25 4
gpt4 key购买 nike

我认为我想要实现的是在 ng-grid 内拥有一个树状。我没有找到这样的实现,但我想知道是否可以使用分组机制

grid example

我需要让组标题可以与其下面的行相同的方式进行编辑(参见上图),并使用完全相同的可编辑单元格,充当主行。更新标题组中的一个单元格时,应更新该组下的所有单元格。

来自 ng-grid 文档 http://angular-ui.github.io/ng-grid/ :

聚合模板的默认值:

    <div ng-click="row.toggleExpand()" ng-style="{'left': row.offsetleft}" class="ngAggregate">
<span class="ngAggregateText">{{row.label CUSTOM_FILTERS}} ({{row.totalChildren()}} {{AggItemsLabel}})</span>
<div class="{{row.aggClass()}}"></div>
</div>

是否可以使用此选项来呈现我所描述的聚合行?

最佳答案

下面的答案/评论与树状结构相关,与使聚合行可编辑无关...

如果您正在 ng-grid 中寻找树状结构,那么您可以通过结合 ng-ifng-click 和 API( s) 在单击特定行时更新 ng-grid data 选项。这是一个示例 plnkr .

单击父行时,将调用切换函数以在 ng-grid data 中添加/删除子行。 (有关完整详细信息,请参阅我的 plunker 代码)

$scope.toggleDisplay = function(iType) {
$scope.displayItemDetails[iType] = $scope.displayItemDetails[iType] ? 0 : 1;
$scope.selItems = $scope.updateTable();
};


$scope.updateTable = function() {
var selItems = [];
for (var i in $scope.allItems) {
var iType = $scope.allItems[i]["Type"];

if (angular.isUndefined($scope.displayItemDetails[iType])) {
$scope.displayItemDetails[iType] = 0;
}

if (1 == $scope.displayItemDetails[iType]) {
$scope.allItems[i]["Summary"] = '-';
} else {
$scope.allItems[i]["Summary"] = '+';
}
selItems.push($scope.allItems[i]);

if ($scope.displayItemDetails[iType]) {
for (var j in $scope.allItems[i]["Details"]) {
$scope.allItems[i]["Details"][j]["Summary"] = "";
selItems.push($scope.allItems[i]["Details"][j]);
}
}

}
return selItems;
};

$scope.gridOptions = {
data: 'selItems',
columnDefs: [{
field: 'Summary',
displayName: '',
cellTemplate: summaryCellTemplate,
width: 30
}, {
field: 'Name',
displayName: 'Name',
}, {
field: 'Type',
displayName: 'Type',
}, {
field: 'Cost',
displayName: 'Cost',
}, {
field: 'Quantity',
displayName: 'Quantity',
}],
enableCellSelection: false,
enableColumnResize: true
};

关于angularjs - angular-ui ng-grid 如何使聚合行成为可编辑行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17933231/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com