如何向jqgrid添加复选框选择列

时间:2020-09-21 02:31:33

标签: jquery jqgrid multi-select jqgrid-asp.net

好的,因此在我的应用程序中,colModel已经准备好了,我将使用multiselect: true来添加setGridParam,如下所示。

jQuery(document).ajaxComplete(function () {
  var grid = jQuery('#grid');
  grid.jqGrid('setGridParam', {
    multiselect: true
  }
});

这似乎只能部分起作用,并且在选中时突出显示行。 但是,我没有获得第一个多选复选框。

我参考了以下显示复选框列的示例。

http://www.guriddo.net/demo/guriddojs/selection/checkbox/index.html

http://www.trirand.com/blog/jqgrid/jqgrid.html

1 个答案:

答案 0 :(得分:0)

不能动态设置multiselect选项。如果查看选项表的最后一列-是否可以更改?,则可以轻松确定jqGrid中的哪个参数可以动态更改。参见docs here

为完成这项工作,我建议您做一些技巧。

在创建网格时,请使用multi select true启用多重选择。创建网格后,立即隐藏多选列。

当您需要动态启用多选时,只需显示该列即可。多重选择列的名称是 cb _ 加上网格ID的组合。代码如下所示:

// create grid
$("#grid_id").jqGrid({
...
multiselect: true,
...
});
// hide multiselect column    
$("#grid_id").jqGrid("hideCol", "cb_grid_id");
....

jQuery(document).ajaxComplete(function () {
  var grid = jQuery('#grid_id');
  // show (enable) multiselect dynamically
  grid.jqGrid("showCol", "cb_grid_id");
});