1
在我的應用程序中有兩個拖放網格。什麼是從網格行創建列表的最佳方式
要創建列表,請將行從第一個網格拖到第二個網格。
發送此列表(第二個網格)的服務器然後顯示在另一個網格中的最佳方式是什麼?
我試着同步和setDirty(true),但不推薦使用「Ext.data.Model#setDirty」。
var grid = this.lookupReference('gridRef');
var store = grid.getStore();
store.each(function(record){
record.setDirty(true);
});
store.sync();
我試過了,沒有成功:
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
????
編輯:
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')
}
});
謝謝亞歷山大。 getRange()運作良好。 但是我收到以下錯誤:未捕獲RangeError:超出最大調用堆棧大小。 我用我的代碼編輯了我的問題。 – josei
對不起,忘了你必須從記錄中提取數據。一條記錄包含一個鏈接到商店,其中包含一個鏈接到記錄...如果它被序列化爲一棵簡單的樹,它將是無止境的。嘗試'store.getRange()。map(function(record){return record.getData()})'。 – Alexander
再次感謝亞歷山大。 – josei