如何根据复选框状态extJs 6禁用网格上的单元格

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何根据复选框状态extJs 6禁用网格上的单元格相关的知识,希望对你有一定的参考价值。

我需要根据复选框状态更改禁用某些单元格。我在复选框列上添加了一个监听器:

listeners: {
    checkchange: function( me , rowIndex , checked , record , e , eOpts) {
        var row = me.getView().getRow(rowIndex);
        var columnIndex = Ext.getCmp('MyColumnIdToDisable').fullColumnIndex;
        Ext.get(row.childNodes[columnIndex]).setDisabled=!checked;
    }        
}

但是会显示以下错误:

未捕获的TypeError:Ext.get(...)。setDisabled不是函数

答案

你可以使用this.disabledCls我已经有一个例子可能与你需要的相同。它禁用特定的单元格。

https://fiddle.sencha.com/#view/editor&fiddle/1lvm

onCheckcolumnCheckChange: function (checkcolumn, rowIndex, checked, record, eOpts) {
    // we need to get a grids view
    var view = Ext.first('#MySpecialGridId').getView();
    var cell = view.getCell(rowIndex,1);

    if (checked) {
        // add disabled cls -> disabled
        cell.addCls(this.disabledCls);
    }else{
        // remove the disabled cls -> enabled
        cell.removeCls(this.disabledCls)
    }
}

以上是关于如何根据复选框状态extJs 6禁用网格上的单元格的主要内容,如果未能解决你的问题,请参考以下文章

如何仅在单击网格中的复选框而不是单击单元格或行时选择复选框在 extjs 3.2

如何禁用 ExtJS 网格中的控件?

使用行编辑器进行编辑时,如何在 extjs 4.1.1 中禁用行的特定单元格?

EXtjs 3.2:如何将特定单元格设置为不可编辑或只读?

extjs 根据值更改网格单元格背景

根据状态检查 extjs 网格中的行