In meiner App gibt es zwei Drag & Drop-Gitter.Was ist der beste Weg, um eine Liste aus den Zeilen eines Rasters zu erstellen
Um eine Liste zu erstellen, ziehen Sie Zeilen vom ersten in das zweite Raster.
Wie kann ich diese Liste von Zeilen (zweites Raster) am besten so senden, dass der Server in einem anderen Raster angezeigt wird?
Ich habe versucht, zu synchronisieren und setDirty (true), aber "Ext.data.Model # setDirty" ist veraltet.
var grid = this.lookupReference('gridRef');
var store = grid.getStore();
store.each(function(record){
record.setDirty(true);
});
store.sync();
Ich habe versucht, ohne Erfolg:
var grid = this.lookupReference('gridRef');
var store = grid.getStore();
grid.getSelectionModel().selectAll();
var selection = grid.getSelectionModel().getSelection();
var values = [];
for(var i=0; i<selection.length; i++) {
values.push(selection[i].get('order'));
values.push(selection[i].get('item'));
}
var model = Ext.create('app.myModel', values);
console.log(model) //show just one item
????
EDITED:
var grid = this.lookupReference('gridRef');
var store = grid.getStore();
var records = store.getRange();
var create = 'create'; //PHP CRUD » case create
Ext.Ajax.request({
url: 'php/crudActionList.php?create',
method: 'POST',
params : create,
jsonData: records,
// jsonData: Ext.encode(records),
// jsonData: Ext.JSON.encode(records),
success: function(conn, response, options, eOpts) {
console.log('Success!');
},
failure: function(conn, response, options, eOpts) {
console.log('failure')
}
});
Danke Alexander. getRange() funktioniert gut. Allerdings bekomme ich den folgenden Fehler: Uncaught RangeError: Maximale Call-Stack-Größe überschritten. Ich habe meine Frage mit meinem Code bearbeitet. – josei
Sorry, vergessen Sie, dass Sie die Daten aus den Datensätzen extrahieren müssen. Ein Datensatz enthält einen Link zum Speicher, der eine Verknüpfung zum Datensatz enthält. Wenn dieser als einfacher Baum serialisiert wird, ist er endlos. Versuchen Sie 'store.getRange(). Map (function (record) {return record.getData()})'. – Alexander
Danke nochmal Alexander. – josei