1

我有一个使用 Gridx 创建的网格,它将用于监视和管理条目。当用户单击表格的一行时,会弹出一个对话框,允许用户选择忽略或响应。单击其中一个时,我必须更新我的 SQL 数据库中的一个条目(从中提取此信息的同一个表),然后我希望网格用更新的信息刷新。

基本上,在根据用户选择更新 SQL 数据库之后,我希望网格使用更新的信息进行刷新。

我是 dojo 和商店用户的新手,所以请怜悯: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(); 

但是更新后不能刷新?顺便说一句,我使用的是同步缓存。任何帮助或建议将不胜感激!

提前致谢

4

1 回答 1

1

您必须在声明商店时设置"clearOnClose:true"和。"urlPreventCache:true"将 clearOnClose 设置为 true 将使您的商店能够再次获取数据。否则,无论您是否使用查询,数据都只会获取一次。

所以,设置好这些参数后,当需要重新加载时,只需关闭商店即可。

store.close();

现在,刷新身体。数据将成功重新加载。

store.query().then(function() {
   grid.model.clearCache();
   grid.body.refresh();
});
于 2014-04-10T13:44:37.123 回答