我有一个由JsonRestStore支持的enhancedGrid,它显示摘要信息,可以单击以显示和编辑另一个选项卡中的完整信息。然而,当我使用setQuery命令刷新网格时,任何已编辑的项目都将从网格中删除(尽管它们似乎仍然位于商店的_index属性中)。
如果我只是手动更新数据库或使用dojo编辑器,就会发生这种情况。从服务器返回的json仍然有效,如果我在浏览器中刷新页面,则该项目会重新出现。有什么想法可能会发生什么?
这是创建网格的代码。
var gridStore = new dojox.data.JsonRestStore({
target : '/api/prospects/',
idAttribute : 'prospect_id',
});
var grid = new dojox.grid.EnhancedGrid({
store: gridStore,
structure: gridStructure,
columnReordering: true,
selectionMode: 'single',
plugins: {filter: true},
});
gridPane.setContent(grid);
这是设置查询的代码
dojo.connect(tree,'onClick', function(node){
if (node.type == 'project') {
grid.setQuery({project:node.project_id});
}
});
答案 0 :(得分:0)
典型的搜索高低之后发生这种情况的原因我在这里发布之后找到答案。似乎jsonreststore在其渲染引擎中有一个错误,可以通过从ClientFilter文件中删除几行来解决(可能,虽然我没有检查过JsonRestStore与我测试过的完全相同的错误,没有缓存,并且具有相同的错误结果)。
详情位于此page
的底部