0

我在 extjs4 工作。我使用了带有 cellEditing 插件的 gridview。它工作正常。但是在编辑文件夹名称后,它不会在网格上显示新更新的文件夹名称。我不想刷新商店。我只想在网格上显示更新的名称。我试过了=

getGridPanelStore = getGridPanel.getStore();
folderId = id;
var newtitle = newUpdatedValue;
getRecord = getGridPanelStore.getById(id);
recordToUpdate = getGridPanelStore.indexOf(getRecord ).set('title',newtitle );

但它没有在网格上设置新的更新值。那么如何在编辑后在不加载整个商店的情况下在网格上显示更新的值。

4

1 回答 1

0

这段代码真的有效吗?

据我了解 Ext.data.Store 的indexOf方法将存储内记录的索引作为整数检索,因此调用set('title', newTitle)可能会引发Uncaught TypeError: Object n has类型的异常没有方法“设置”

除此之外,您不需要加载整个商店来更新网格,因为视图绑定到商店,它们会在商店字段更改时自动刷新,因此它应该通过更改 title 属性来工作,如下所示:

gridStore = gridPanel.getStore();
record = gridStore.getById(recordId);
record.set('title', newTitle);

如果 value 没有以这种方式更新,您应该检查目标列是否没有与之关联的自定义渲染器,该渲染器可以以任何方式更改该特定字段的视图输出。

于 2013-10-14T09:57:28.670 回答