2

如何生成一个在多列上分组的 jquery 网格?

下面是我正在使用的代码,我需要用多个列名对网格进行分组。目前,它被分组为一列。

列名称的选择菜单出现在下拉菜单中。

这是使用所选菜单项对网格进行分组的 jQuery 代码:

<script>
        jQuery("#chngroup").change(function()
        {
            var vl = jQuery(this).val(); 
            if(vl) 
            { 
                if(vl == "clear") 
                    jQuery("#<?php echo $grid_id ?>").jqGrid('groupingRemove',true); 
                else 
                    jQuery("#<?php echo $grid_id ?>").jqGrid('groupingGroupBy',vl); 
            } 
        });
</script>   
4

1 回答 1

1

要对多列进行分组,您需要将所有列名称groupingGroupBy作为数组传递给方法(数组中的第一个值是第一级,第二个值是第二级等)。

例如,假设您想先按名称分组,然后按日期列分组:

 jQuery("#grid_id").jqGrid('groupingGroupBy', ['name', 'date']);

这应该可以解决问题。您可以在附加参数中传递所有其他groupingView选项(作为将用于扩展 default 的 na 对象groupingView)。

更新

我在 jsFiddle -> jqGrid multigrouping with 'groupingGroupBy' 方法上创建了一个实时示例

于 2012-09-11T09:51:02.130 回答