在激活 extjs 4 时清除可编辑的网格单元

Posted

技术标签:

【中文标题】在激活 extjs 4 时清除可编辑的网格单元【英文标题】:clear editable grid cell on activate extjs 4 【发布时间】:2015-10-28 15:48:30 【问题描述】:

我有一个 ExtJS 4 可编辑网格,它有两个可编辑列(一个日期列和一个普通文本列)。默认情况下,加载网格时,我会在每列中显示日期和文本。我想删除用户单击单元格以编辑其内容时显示的信息。当用户点击(不修改任何内容)时,我想恢复到字段中显示的原始数据。

知道如何实现吗?

我尝试了以下方法,但没有成功:

Ext.getCmp('my_grid').on('beforeedit', function(editor, e, eOpts) 

    e.record.value = "";

);    

感谢您的帮助

【问题讨论】:

【参考方案1】:

您必须同时使用 beforeeditvalidateedit 侦听器才能实现此目的。

beforeedit 将用于清除值。

validateedit 如果没有通过return false

输入值,将恢复为之前的值
validateedit: 
                fn: function(event,editor) 
                    if(!editor.value)
                        return false;
                    else 
                   return true;

             
        ,
             beforeedit: 
                fn: function(event,editor) 
                    editor.value=null;
                    return true;
                

        

【讨论】:

以上是关于在激活 extjs 4 时清除可编辑的网格单元的主要内容,如果未能解决你的问题,请参考以下文章

如何验证 Extjs 可编辑网格单元

如何在 extjs 网格(单元格编辑)中将完整列显示为可编辑?

ExtJS 4.2网格单元格编辑如何将列值与组合显示值绑定

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

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

ExtJs - 通过单击行中的相应图像来编辑网格单元格