我有一个使用 Gridx 创建的网格,它将用于监视和管理条目。当用户单击表中的一行时,会弹出一个对话框,允许用户选择忽略或响应。单击任一选项时,我必须更新 SQL 数据库中的一个条目(从中提取此信息的同一个表),然后我希望网格使用更新后的信息进行刷新。
基本上,在根据用户选择的内容更新 SQL 数据库之后,我希望网格使用更新的信息进行刷新。
我是道场新手,也是商店用户,所以请怜悯:P。
我的网格是这样创建的:
var memoryStore = new Memory();
var jsonRest = new JsonRest({target:url, idProperty:"username", sortParam: "sortBy"});
var store = new Cache(jsonRest, memoryStore);
var grid = new Grid({......});
/*this could be very wrong, but its the only way I could get
my data to load on first load - any corrections would be appreciated*/
store.query{{}).then(function() {
grid.model.clearCache();
grid.body.refresh();
});
grid.startup();
但更新后无法刷新?顺便说一句,我正在使用同步缓存。 任何帮助或建议将不胜感激!
提前致谢
最佳答案
声明存储时,您必须设置“clearOnClose:true”
和“urlPreventCache:true”
。将clearOnClose设置为true将使您的商店能够再次获取数据。否则,无论您是否使用查询,数据都只会获取一次。
所以,设置完这些参数后,当需要重新加载时,直接关闭store即可。
store.close();
现在,让 body 恢复活力。数据将成功重新加载。
store.query().then(function() {
grid.model.clearCache();
grid.body.refresh();
});
关于javascript - Dojo Gridx 在完成特定操作后刷新表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22968116/