限制编辑到行编辑器Grid中的一个单元格

时间:2010-09-19 15:32:33

标签: extjs grid

在我的editorGrid中我有一个带有dateField编辑器的列,当网格是rendred时我将该字段设置为不可编辑:

myColModel.setEditable(colIdex,false)

在同一行的其他单元格中更改值后,它将可编辑

myColModel.setEditable(colIdex,true)

问题是:列中的所有单元格都是可编辑的

如何才能使所选行中的单元格可编辑

非常感谢

3 个答案:

答案 0 :(得分:1)

在EditorGrid上使用'beforeedit'监听器 - 您可以检查他们尝试编辑的字段。如果未设置其他字段,则返回false以禁止他们编辑该字段。

答案 1 :(得分:1)

基本上,您可以创建条件逻辑并根据行模型隐藏编辑按钮。

dataBound: function (){
       var grid = this;
       var trs = this.tbody.find('tr').each(function(){
         var item = grid.dataItem($(this));
         if( item.UnitPrice % 5 == 0) {
           $(this).find('.k-grid-edit,.k-grid-delete').hide();
         }
       });               
     },

答案 2 :(得分:0)

您可以通过覆盖isCellEditable函数以其他方式执行此操作。 请查看以下链接。

http://www.sencha.com/learn/Ext_FAQ_Grid#Disable_editing_of_particular_rows.2C_columns.2C_etc