2012-10-15 68 views
1

有沒有一種方法可以實現展開全部/摺疊所有功能在jqgrid中分組功能?據我瞭解設置groupingCollapse:true,摺疊數據,但我想使其動態,可能是在網格內放置+/-圖標的點擊。在此先感謝您的任何建議/幫助...jqgrid - 展開全部/摺疊所有分組

回答

1

我想你會在the old answer找到你的問題的答案。答案的主要思想是使用jqGrid的參數groupingViewsortnames[0]屬性。它是一個數組,其元素可用於構造分組標題的ID,並且可以使用groupingToggle方法摺疊或展開組標題。您可以通過這種方式展開或摺疊所有組。

+0

非常感謝您的幫助.. – varaprakash

+0

@varaprakash:不客氣! – Oleg

+0

@Oleg有沒有辦法,當最初'groupCollapse'爲'false'時,我可以摺疊網格中的所有組?我不希望網格在刷新時崩潰。 –

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); 
     } 
     } 
    } 
} 
1

這是特定的jqGrid的特定版本,它擴展了所有層,但它是如此短暫而甜蜜,我只是無法拒絕發佈它。

function expandAll() { 
    $("#myGrid .ui-icon-circlesmall-plus").trigger("click"); 
}