2011-01-11 69 views
0

我有一个dojox.grid.DataGrid与dojox.data.JsonRestStore一起工作。 改变一个单元格的值之后(我们称之为A1单元格)槽AJAX,我重装电网这样的:Dojo从商店网格更新

dijit.byId('reminders').selection.clear(); 
dijit.byId('reminders').store._items = Array(); 
dijit.byId('reminders')._refresh(); 

,一切工作正常。然而,如果改变在同一行上的另一个小区(小区A2)的值,而不必重新加载整个网格,这样的:

var grid = dijit.byId('reminders'); 
var item = grid.getItem(parseInt(response_data.edit_row)); 
grid.store.setValue(item, 'rem_text', response_data.rem_text); 
当我改变单元格A1的值并重新加载网格

所示的值即使响应中的值发生变化也不会改变(在Firebug控制台中可以看到)。

这是发生这种情况时唯一的情况。如果我改变B2的值,然后A1和重新加载它工作正常。 所以,编辑后,我得到了正确的值的新店,但它不显示。我希望我已经足够清楚解释

我不知道我在这里错过了什么,特别是因为代码在所有其他情况下都起作用。 任何有识之士将不胜感激。

回答

0

我对JsonRestStore有一些问题,并最终使用QueryReadStore,它以我想要的方式检索我的数据并使用grid._refresh。