這次遇到的問題有兩個

一個是在jqGrid設置Word上面的階層

可以收合和展開下面一階的資料

只要在jqGrid下方新增grouping:true

groupingView:{

groupField:(依照你的哪個欄位分組合併為同一個階層)

}

 

如果不想顯示合併的欄位

要在groupingView內再加入groupColumnShow:false

groupingView:{

groupField:(依照你的哪個欄位分組合併為同一個階層),

groupColumnShow:[false]

}

 

解決了第一個問題

但還是有個難題

如何在階層處新增checkbox並與下方checkbox做連動

 

首先我是在jqGrid中的組織架構

以formatter的function設置input type = checkbox自訂欄位

自訂欄位的部分可以以groupField數值設定

把同一個階層的checkbox做一個關聯

這時候我們就把階層為下屬單位的checkbox設定完畢

 

接著設定groupingView的checkbox

在groupingView處再新增一項groupText

groupingView:{

groupField:(依照你的哪個欄位分組合併為同一個階層),

groupText:['<input type = "checkbox" 自訂欄位={0} 自訂欄位1/> <b>{0} </b>'],

groupColumnShow:[false]

}

 

自訂欄位是與下層單位做關聯

自訂欄位={0}是取groupField第一個值

自訂欄位1則是要跟下層單位做區隔

設置完後就完成groupingView的checkbox設置

jqGrid groupingView 設定checkbox全選

最後我們只要設定jQuery

當input[type=checkbox]有變化的時候

判斷是哪一個階層的checkbox有異動

如果是上層的checkbox有異動

則下屬單位全勾選或全不勾選

如果是下層的checkbox有異動

則判斷下層的checkbox們有全選或是沒有全選

設定上層checkbox要不要勾選

 

groupingView可以收合同階層的下屬單位

jqGrid groupingView 設定checkbox全選

設定完成後可設定全勾選或全不勾選

jqGrid groupingView 設定checkbox全選

如果下層的checkbox沒有全部勾選

上層的checkbox也不勾選

jqGrid groupingView 設定checkbox全選

arrow
arrow
    創作者介紹
    創作者 南宮洛 的頭像
    南宮洛

    南宮洛的海盜窩

    南宮洛 發表在 痞客邦 留言(0) 人氣()