jqGrid如何實現動態列

2021-06-21 23:18:56 字數 1288 閱讀 1220

最近在乙個專案中需要實現jqgrid動態列功能,然而jqgrid並沒有很好的支援這個功能,在網上查閱了很多資料,最後看到乙個部落格的思路大概想出了怎麼解決。

由於我們使用的**主要是jqgrid 和 dataggrid來實現的,按照相關api可以輕鬆的實現**,但是有時候在不知道到底有多少列的時候jqgrid和datagrid顯得力不從心,如圖所示紅色部分的列是不確定的

解決方案:由於jqgrid的列描述是存在乙個陣列裡面的,只要在使用**的時候按照要求動態的實現這個陣列就行了。

這是個列陣列(設定固定列):

colmodeldata

= [,]

更具資料庫實際情況新增列(設定動態列):

varproperties =[

'financetypeid'

,'financetypename'];

raaccountdetailservice.findmapbypropertiesquick(properties,null,false,function(data); 

colmodeldata.push(amountcol);}}

});在

jqgrid

中加入這個列資料(把列陣列放在

colmodel

裡面):

height

: "auto",

datatype: "json",

dwrfun: racaseservice.findmapbypropertiesformonthreport,

dwrcountfun: racaseservice.findcountbypropertiesformonthreport,

condition: "",

searchcondition: '',

selectcondition: '',

needlink:false,

dwr:true,

autowidth:true,

footerrow:true,

gridcomplete: completegroupmethod,

colmodel:columndata,

rownum: 10,

rowlist : [ 10,20, 30 ]

按照這三點就可以實現動態列了。

jqgrid 固定列寬度 jqGrid 設定列寬

在jqgrid顯示出來之後,需要手動調整列寬。1.經過調查jqgrid本身不支援指定列寬,當然這個是說的的初始化完成後。2.經過調查手動是可以調整列寬,所以進行了事件的檢視resizestop的事件在調整後被呼叫。3.經過一番思考,這個事件不能滿足要求。4.從html角度考慮,只要把這列寬調整好就行...

Jqgrid入門 Jqgrid列資料拖動 七

上一章提到在jqgrid中如何設定二級表頭,這一章節主要 jqgrid 裡面的資料如果實現拖動功能,比如你想把第一行的資料拖到當前頁的最後一行,或者其他位置。jqgrid 外掛程式自己沒有提供這種功能的,如果要使用這個功能,還需要匯入 jquery.tablednd.js 初始化拖動外掛程式 如 1...

layui table動態列實現

前兩天專案遇到乙個場景,使用layui table時,除了固定列之外,還需要使用動態列來展示一些動態資料。mysql查詢動態行轉動態列,並使用mybatis執行語句 基本思路 從後台獲取資料,處理成陣列型別 宣告乙個二維陣列,根據列需求動態新增元素作為動態列 table渲染時指定資料和列 套路 aj...