2011-01-08 76 views
0

我有一个jqGrid使用工具栏搜索与一些文本搜索businessName和下拉状态。我正在使用分组功能按状态分组,这很好。我还设置了groupCollapsetrue这样的选项,因此基本上会加载一个状态网格和它们的业务计数。jqGrid - groupCollapse初始化,但搜索后unCollapse

groupText: ["{0} - {1} businesses"], 
groupCollapse:true 

那么对于我的工具栏搜索栏filterToolbar

$("#businessGrid").jqGrid('filterToolbar',{stringResult: true,searchOnEnter : false, 
    afterSearch : function(){ 
    $("#businessGrid").jqGrid('setGridParam', 
      {'groupCollapse':false} 
    ).trigger('reloadGrid'); 
     var x = $("#businessGrid").jqGrid('getGridParam','groupCollapse'); 
     console.log(x); 
    } 

});

当我登录[x]它确实将gridParam设置为false,但是当我触发重新加载网格时,它不会取消折叠组。

任何想法,将不胜感激。如果它不可能,我将不得不提出一个不同的解决方案,但这种行为将是理想的。

谢谢, 添

回答

1

认为我找到了解决办法除去分组这是好的,因为只有一个状态可在任何一次的方式来选择。

///if blank option (all states option) is chosen reapply grouping 
if($("#gs_StateFull").val() == "") { 
    $("#businessGrid").jqGrid('setGridParam',{'grouping':true}).trigger('reloadGrid'); 
} else { 
    $("#businessGrid").jqGrid('setGridParam',{'grouping':false}).trigger('reloadGrid'); 

} 

编辑:由于groupCollapse里面的groupingView对象它需要使用下面的语法来设置。这也保持了分组的完整性

///if blank option (all states option) is chosen reapply grouping 
if($("#gs_StateFull").val() == "") { 
    $("#businessGrid").jqGrid('setGridParam',{groupingView: { groupCollapse : true} }).trigger('reloadGrid'); 
} else { 
    $("#businessGrid").jqGrid('setGridParam',{groupingView: { groupCollapse : false} }).trigger('reloadGrid'); 

}