我想在编辑/添加模式下向列中添加多个复选框。现在,此列有一个启用了多个选项的选择框。我想用复选框列表或单选按钮列表替换它
我的想法是:用户应该能够通过选中特定单元格中列出的复选框(添加或编辑模式:内联)来选择所需的相关选项。保存行后,应仅显示所选的选项(不带复选框)。
以下是特定列的选择框的代码段:
{
name: 'RoomTypes', index: 'RoomTypes', width: 300, editable: true, edittype: 'select',
editoptions: {
value: roomTypesFormatterEdit,
custom_element: function (value, options) {
return $.jgrid.createEl.call(this, "select",
$.extend(true, {}, options, { custom_element: null, custom_value: null }),
value);
},
custom_value: function ($elem, operation, value) {
if (operation === "get") {
return $elem.val();
}
},
multiple: true
},
align: 'left', formatter: roomTypesFormatter
},
其中“roomTypesFormatterEdit”返回将在选择框中显示的酒店房间名称列表。
此外,我想重新排列编辑(编辑模式)行的高度以适应复选框的高度或显示选择框中的所有项目
请帮助 谢谢大家
答案 0 :(得分:2)
我认为您无需编写自定义编辑控件(custom_element
和custom_value
)或自定义格式化程序(formatter
和unformat
)。取而代之的是,您只需将multiple: true
属性添加到editoptions
即可拥有基本的多选功能。要提高可见性,您可以使用某些现有控件,例如jQuery UI MultiSelect Widget或Select2。 The answer和this one提供了使用jQuery UI MultiSelect Widget的演示。 One more answer和this one提供使用Select2的演示。演示不使用Select2的多选功能,但它只是控件的一个选项(参见the documentation)。