【问题标题】:jqGrid and Dynamic GroupingjqGrid 和动态分组
【发布时间】:2011-04-08 13:33:52
【问题描述】:

我正在对我的 jqGrid 进行一些动态分组,每个示例发布在:http://www.trirand.com/blog/jqgrid/jqgrid.html(请参阅树导航中的最后一部分:“分组:动态更改分组”。

如果网格最初有一个分组列,我可以让我的网格动态更改分组。然而,这不是期望的行为。最初,网格需要取消分组,并允许用户根据需要对项目进行分组。

代码如下:

function onGroupByChanged(){
    var vl = $('#lstGroupBy').val();
    if(vl) {
        if(vl == "clear") {
            $("#refData").jqGrid('groupingRemove',true);
        } else {
            $("#refData").jqGrid('groupingGroupBy', vl);
            $("#refData").jqGrid('setGridParam', { grouping:true });
            $('#refData').trigger('reloadGrid');
        }
    }   
}

当我将 groupingGroupBy 设置为列名(包含在“vl”中)时,我在 FireBug 中收到此错误:can't convert null to object in jQuery min 1.4.2

我什至将调用顺序交换为 groupingGroupBy 并将分组设置为 true。

有人有想法吗?我被困住了,已经花了大约两个小时。

谢谢, 兰德尔

【问题讨论】:

    标签: jquery dynamic jqgrid grouping


    【解决方案1】:
    var GroupOption = new Object();
    var groupField = [];
    
    groupField.push(vl);
    
    GroupOption.groupField = groupField;
    GroupOption.groupColumnShow = true;
    GroupOption.groupCollapse = false;
    GroupOption.groupText = ['<strong> {0} - {1} Item(s)</strong>']
    
    $("#refData").setGridParam({groupingView : GroupOption});
    $("#refData").setGridParam({grouping : true});
    $("#refData").trigger('reloadGrid');      
    

    【讨论】:

      【解决方案2】:

      无视。

      在我的网格的初始初始化中,为 groupingView 参数设置完整选项,同时设置 grouping: false 就可以了。

      ...
          grouping: grouping,
             groupingView : {
                groupField : [groupColParam],
                groupColumnShow : [true],
                groupText : ['<b>{0}</b>'],
                groupCollapse : true,
                groupOrder: ['asc'],
                groupSummary : [false]
             },
      ...
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-06-09
        • 2021-05-18
        • 2013-04-17
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多