【问题标题】:Extjs : get modified records after store reconfigureExtjs:在商店重新配置后获取修改的记录
【发布时间】:2015-07-10 11:12:58
【问题描述】:

我重新配置我的商店并向其中添加新字段,然后加载其相应的网格。我需要编辑网格单元格并在最后一步保存整个修改后的网格行。

问题是,当我调用此代码时,即使我没有编辑网格中的任何单元格或行,我也会得到网格中的所有行,这可能是因为我重新配置了商店。 但实际上什么都没有改变,商店中的新字段仅供查看。

如何获取其单元格值已更改的行?

// returns all store records
Ext.ComponentQuery.query("documentgrid")[0].getStore().getModifiedRecords();

【问题讨论】:

    标签: extjs extjs4.2


    【解决方案1】:

    您的问题描述得不是很清楚。 稍微猜测一下,给你这个答案,希望对你有帮助。

    getModifiedRecords() 不适用于该用途。 改为订阅 store 的“update”事件。它可以挂钩 store 中模型字段的修改。

    试试代码sn-ps:

    {
        //your grid config goes here
        listeners:{
            update:function(me, record){
                //TODO save the modified record somewhere for your save button to pickup.
            }
        }
    }
    

    【讨论】:

    • 在我的网格保存按钮上添加了这个,什么也没发生 getStore().on('update', function(this, record, operation, modifiedFieldNames, eOpts){ });
    • 首先,您应该知道这一点。每次编辑网格单元格时都会发布更新事件,并且您的更新监听器应该在单元格编辑之前准备好。在网格更改后调用 saveButton 处理程序!您的听众什么都没听。请参阅我更新的帖子。
    【解决方案2】:

    我得到了所有的记录,因为我没有在 reconfigurer 之后调用 store 上的 commitChanges。

    【讨论】:

      猜你喜欢
      • 2017-02-24
      • 1970-01-01
      • 2014-01-21
      • 2012-08-05
      • 1970-01-01
      • 2011-12-24
      • 2013-09-10
      • 1970-01-01
      • 2012-12-21
      相关资源
      最近更新 更多