0

我正在使用 JqgridMultiSelect选项。

它工作得很好。是否可以动态设置该属性?

例如:我单击一个按钮,然后应该启用多选属性,直到它不应该显示给用户。

我如何在 JqGrid 中实现它?

谢谢

4

3 回答 3

2

jqGrid 不支持动态创建列。因此,如果不重新创建网格,您将无法打开multiselect: true选项(请参阅答案)。

如果您准备好进行实验,您可以按照我在答案中的建议进行操作,这些建议确实描述了如何在一些限制下实现该功能。

更新:我以前的答案是旧的。如果您使用 jQuery 1.8 或更高版本,则必须将行更改events = $grid.data("events");events = $._data($grid[0], "events");子类reloadGrid事件。在此处查看固定演示。

于 2013-06-24T10:50:04.277 回答
0

您可以使用这段代码:

   var myGrid = $("#grid_name");
   $("#cb_"+myGrid[0].id).hide();

并展示它

   var myGrid = $("#grid_name");
   $("#cb_"+myGrid[0].id).show();

如果要隐藏每一行的所有复选框:

   $("input[name^='jqg_']").each(function() {
       $(this).hide();
   });

并展示它:

   $("input[name^='jqg_']").each(function() {
       $(this).show();
   });

我为你准备了小提琴
希望能帮助到你。

于 2013-06-24T10:47:41.613 回答
0

是的,你可以这样做

if(true)
    $("#GridID").jqGrid('setGridParam',{multiselect:true}); 
else
    $("#GridID").jqGrid('setGridParam',{multiselect:false}); 
于 2013-06-24T11:43:13.133 回答