2011-01-11 5 views
0

Ich habe ein dojox.grid.DataGrid mit einem dojox.data.JsonRestStore arbeiten. Nach Werte einer Zelle zu ändern (nennen wir es die Zelle A1) trough AJAX, ich laden Sie die Gitter wie folgt aus:Dojo-Grid-Update vom Shop

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

und alles funktioniert ok. Wenn jedoch eine der Wert einer anderen Zelle (Zelle A2) Änderung in der gleichen Zeile, ohne das gesamte Raster Neuladen, wie folgt aus:

var grid = dijit.byId('reminders'); 
var item = grid.getItem(parseInt(response_data.edit_row)); 
grid.store.setValue(item, 'rem_text', response_data.rem_text); 

, wenn I den Wert der Zelle A1 ändern und neu geladen wird der Wert des Gitters gezeigt ändert sich nicht, obwohl der Wert in der Antwort geändert wird (in der Firebug-Konsole angezeigt).

Dies ist der einzige Fall, wenn dies passiert. Wenn ich den Wert von B2 und dann A1 ändere und neu lade funktioniert es in Ordnung. Also, nach der Bearbeitung, bekomme ich den neuen Laden mit den richtigen Werten, aber es wird nicht angezeigt. Ich hoffe, ich war klar genug zu erklären

Ich weiß nicht, was ich hier fehlt, vor allem, weil der Code in allen anderen Fällen funktioniert. Jeder Einblick würde sehr geschätzt werden.

Antwort

0

Ich hatte einige Probleme mit dem JsonRestStore und endete mit einem QueryReadStore, der meine Daten wie gewünscht abrief und mit grid._refresh arbeitete.