如何在剑道网格中有条件地将列设置为可编辑?

时间:2019-06-29 16:01:00

标签: jquery kendo-ui kendo-grid

现在我将整个网格设置为false进行编辑

(function(){
    let grid = $('#MyGrid').data('kendoGrid');
    grid.setOptions({
        editable: false
    });
})();

我现在遇到的问题是,我需要能够允许在两列上进行编辑,并且不确定如何做到这一点?

因此,如果我的列是“姓氏”,“第一”,“年龄”,“性别”,则需要允许在“姓氏”和“第一”中进行编辑,而其余部分则不允许编辑。

编辑

当我将网格设置为“只读”时,这是必需的,但是某些列仍需要可编辑

1 个答案:

答案 0 :(得分:0)

您可以通过数据源模型控制列的可编辑性:

将网格保留为可编辑状态,然后根据需要关闭/打开可编辑字段。

示例(未经测试):

// make all fields uneditable (protected)
$.each(grid.dataSource.model.fields, function (name, options) {
  options.editable = false;
});

// unprotect the two fields in which changes will be allowed
grid.dataSource.model.fields["First"].editable = true;
grid.dataSource.model.fields["Last"].editable = true;