jqGrid添加新列

我发现在JQuery的jqGrid插件,我可以dynamic地添加行,但我可以做同样的列? 如果将有一个简单的表,我宁愿手动手动,但jqGrid存储表格信息在很多div。

dynamic添加列到jqGrid是不可能的。 你必须重新创build整个网格colModel有一列多。 如果你使用单独的colNames ,那么数组的大小也必须增加。 你可以使用GridDestroy来销毁现有的网格。 使用jQuery.RemovejQuery.Empty代替也是可能的。

更新 :在我看来, GridUnload是更好的你的博爱。 我创build了一个演示如何重新创build网格的小演示 。 为了能够使用GridUnload或者GridDestroy,你必须validation你的项目中是否包含了grid.custom.js(如果你使用了jqGrid的开发版本),或者你已经在jqGrid的下载页面上select了“Custom”“Additinal methods”。

更新2 :可以使用addColumn方法,可以从这里下载(请参阅jQuery.jqGrid.addColumn.js )。 该方法仍处于testing阶段。 可以find一些演示,展示如何使用这里的方法(参见addColumnX.htm示例)。

只是使用

 $("#gridid").jqGrid('GridUnload'); 

它将完全卸载电网,并准备再次加载新的列和数据。

rownumbers:true和rownumWidth:25(默认)

您可以简单地设置新的列模型并重新加载网格:

 var newColModel = $("#myGrid").jqGrid("getGridParam", "colModel").concat({ /* new column attributes */ }); $("#myGrid").jqGrid("setGridParam", {colModel: newColModel}).trigger("reloadGrid");