最近在做二維報表,要求報表的表頭自定義。在網上找了好久二維報表的插件,一直找不到合適的。後來就用easyui 中的datagrid替代了一下。
根據實際需求,統計的信息可能不是一個模塊中的字段信息,所以需要把模塊和模塊下的字段都顯示出來,這就用到了表格中的合併單元格,但是在datagrid中如何實現呢? 如下:
- $('#text').datagrid({
- border : 2,
- nowrap : false,
- fit : true,
- url: '<%=request.getContextPath()%>/report/showreport.action',
- frozenColumns: [[
- { title: '區域名稱', field: 'regionname', width: 80, sortable: true}
- ]],
- columns: [
- [{"title":"人員管理","colspan":3},
- {"title":"資料管理","colspan":3}],
- [{"field":"uname0","title":"姓名類似於李","rowspan":1},
- {"field":"config_gender1","title":"性別等於女","rowspan":1},
- {"field":"config_gender2","title":"性別等於男","rowspan":1},
- {"field":"config_datatype0","title":"資料類別等於視頻資料","rowspan":1},
- {"field":"config_datatype1","title":"資料類別等於圖片資料","rowspan":1},
- {"field":"config_datatype2","title":"資料類別等於文件資料","rowspan":1}]],
- rownumbers: true
- });
說明:從代碼中可以看到,表單數組中有兩個數組(一般的表格都是有一個數組), 第一個數組就是表頭中第一行,該數組對象中沒有field屬性,第二個數組就是表頭第二行。返回的數據格式中字段以第二個數組中的field屬性的值爲key。格式如下:
- [{"regionname":"區域1","uname0":278,"config_gender1":1516,"config_gender2":2522,"config_datatype0":19,"config_datatype1":538,"config_datatype2":525}]