jqgrid复选框列作为一个组

时间:2014-12-17 21:17:59

标签: jquery-ui jqgrid

我想让我的复选框列像一个组一样运行,即我只能检查一个复选框,如果我选择另一个复选框,则所有其他复选框都将被取消选中。

下面是我的网格。

        colNames: ['PSN', 'Program Name', 'Comp. Year', 'Primary', 'Select'],
    colModel: [
             { name: 'PSN', index: 'PSN', width: 5, sortable: false, search: false, align: 'center', editable: false },
             { name: 'ProgramName', index: 'ProgramName', width: 40, sortable: false, search: false, align: 'left', editable: false },
             { name: 'CompletedYear', index: 'CompletedYear', width: 10, sortable: false, search: false, align: 'left', editable: false },
             { name: 'PrimaryPSN', index: 'PrimaryPSN', width: 10, sortable: false, search: false, align: 'center', editable: false },   //   ,formatter: PrimaryPSN,
             { name: 'SurveyPSN', index: 'SurveyPSN', width: 10, sortable: false, search: false, align: 'center', editable: true, edittype: 'checkbox', editoptions: { value: "True:False" }, formatter: 'checkbox', formatoptions: { disabled: false } },   //             
    ],
    cellEdit:true,

我考虑过添加一个afterEdit事件,但不知道在网格中循环以清除任何其他已检查的单元格。

1 个答案:

答案 0 :(得分:3)

您可以通过编写自定义函数并为复选框和特定ID提供类来实现此目的。

{ name: 'Action', index: 'Action', width: 80, align: 'center', formatter: function (cell, options, obj) { return "<input type ='checkbox' class='getcheckbox' id ='chkReviewed_" + ID + "' onclick='SelectedId(" + ID + ")'/>" }}

现在在这&#34; SelectedId(ID)&#34;您可以取消选中基于类的所有复选框,然后根据ID选择特定复选框。

希望这能解决你的问题