1

有没有办法我们可以在 jqgrid 中为分组功能实现展开全部/折叠所有功能?据我了解,设置 groupingCollapse: true 会折叠数据,但我想让它动态化,可能是单击放置在网格内的 +/- 图标。提前感谢您的任何建议/帮助...

4

3 回答 3

1

我想你会在旧答案中找到你的问题的答案。答案的主要思想是使用jqGridsortnames[0]参数的属性。groupingView它是一个数组,其中的元素可用于构造分组标题的 id,并且可以使用groupingToggle方法来折叠或展开分组标题。您可以通过这种方式展开或折叠所有组。

于 2012-10-15T22:15:06.593 回答
1

这是特定于 jqgrid 的特定版本的,它扩展了所有层,但它是如此简短和甜蜜,我无法抗拒发布它。

function expandAll() {
    $("#myGrid .ui-icon-circlesmall-plus").trigger("click");
}
于 2013-09-20T18:44:54.400 回答
0

使用 Oleg 的回答/建议和 Jqgrid4.4.1,这就是我所做的。当您想在单击某个按钮时展开/折叠所有行时,此方法有效...

function expandCollapseGroups(expandAll) {
    var $grid = $("#grid");
    var idPrefix =$grid[0].id + "ghead_0_", trspans;
    var groups =$grid[0].p.groupingView.groups;
    if ($grid[0].p.grouping) {
        for (var index = 0; index < groups.length; index++) {
            if (expandAll) {
                trspans = $("#" + idPrefix + index + " span.tree-wrap-" +$grid[0].p.direction + "." +$grid[0].p.groupingView.plusicon);
            } else {
                trspans = $("#" + idPrefix + index + " span.tree-wrap-" +$grid[0].p.direction + "." +$grid[0].p.groupingView.minusicon);
            }
                if (trspans.length > 0) {
                $grid.jqGrid('groupingToggle', idPrefix + index);
        }   
        }
    } 
}
于 2012-10-25T21:26:52.017 回答