0

我正在使用 jqGrid 并遇到了一个我无法确定的问题......

我有一个带有 2 级多分组的网格设置,我还有一个选择列表来动态更改分组。到目前为止,这一切都运行良好,我可以根据所选选项适当地更改分组。例如:

  • 项目一
    • 文件 1
      • 第 1 场、第 2 场、第 3 场
      • 第 1 场、第 2 场、第 3 场
      • 第 1 场、第 2 场、第 3 场
    • 文件 2
      • 第 1 场、第 2 场、第 3 场
      • 第 1 场、第 2 场、第 3 场
      • 第 1 场、第 2 场、第 3 场
    • 文件 3
      • 第 1 场、第 2 场、第 3 场
      • 第 1 场、第 2 场、第 3 场
      • 第 1 场、第 2 场、第 3 场
  • 项目 2
    • 文件 8
      • 第 1 场、第 2 场、第 3 场
    • 文件 9
      • 第 1 场、第 2 场、第 3 场

在此图中,项目编号是输出组,文件编号是内部组。在每个文件组下是该组中所有行的列表。

问题是我需要一个选项来仅删除内部分组并保持外部分组完整。我已经尝试了下面的代码,但它似乎没有做任何事情:

 if (val == "clear")
 {
    failingRulesGrid.jqGrid('setGridParam',
    {
        groupingView:
        {
            groupField: ['ename'],
            groupOrder: ['asc']
        }
    }).trigger('reloadGrid');
}

这是动态更改多分组的代码,它运行良好:

if (val != "clear")
{
    failingRulesGrid.jqGrid('setGridParam',
    {
        groupingView:
        {
            groupField: ['ename', val],
            groupColumnShow: [false, false],
            groupOrder: ['asc', 'asc']
        }
    }).trigger('reloadGrid');
}

有人对我如何删除内部组但保留输出组有任何想法吗?作为旁注,外部组将仅基于“ename”列,因此我无需担心更改外部组的构造方式。

4

1 回答 1

1

不知道为什么我以前没有想到这一点,但我有一个可行的解决方案。使用 'groupingGroupBy' 很容易解决这个问题:

if (val == "clear")
{
    gridSelector.jqGrid('groupingGroupBy', 'ename',
    {
    groupColumnShow: [false],
    groupCollapse: true
    });
}
于 2013-04-02T12:56:34.860 回答