4
首先,對不起我的英文不太好!可編輯網格ExtJS,如何在網格上編輯行後更新數據庫中的行
我需要做的下一件事:ExtJS 3.4可編輯網格(example),它將使用json格式。輸入源是json格式。我做到了,所有工作都很好,例如。
我所做的:從數據庫到陣列中的PHP
- 數據下載
- 陣列編碼爲JSON格式
- 編輯網格源是使用JSON消息的網頁現在一切工作的罰款。
現在我需要做這樣的:我需要在網格單元更新更新數據庫中的數據。
我該怎麼做?沒有在網上找到任何東西。
也許像delphi7中的'OnCellEditting'有一些方法?
我的js代碼:
Ext.onReady(function() {
function formatDate(value) {
return value ? value.dateFormat('M d, Y') : '';
}
// shorthand alias
var fm = Ext.form;
// the column model has information about grid columns
// dataIndex maps the column to the specific data field in
// the data store (created below)
var cm = new Ext.grid.ColumnModel({
// specify any defaults for each column
defaults: {
sortable: false // columns are not sortable by default
},
columns: [{
header: 'ID',
dataIndex: 'id',
width: 30
}, {
id: 'firstname',
header: 'Firstname',
dataIndex: 'firstname',
width: 220,
// use shorthand alias defined above
editor: new fm.TextField({
allowBlank: false
})
}, {
header: 'Lastname',
dataIndex: 'lastname',
width: 220,
// use shorthand alias defined above
editor: new fm.TextField({
allowBlank: false
})
}]
});
// create the Data Store
var store = new Ext.data.JsonStore({
totalProperty: 'total', // total data, see json output
root: 'results', // see json output
url: '/grid/json',
fields: [
'firstname', 'lastname']
});
// create the editor grid
var grid = new Ext.grid.EditorGridPanel({
store: store,
cm: cm,
renderTo: 'grid-editable',
width: 440,
height: 300,
autoExpandColumn: 'firstname', // column with this id will be expanded
title: 'Edit Plants?',
frame: true,
clicksToEdit: 1
});
// manually trigger the data store load
store.load({
// store loading is asynchronous, use a load listener or callback to handle results
});
});
非常感謝。有用!當我編輯單元格請求發送到右頁時,好的。它很容易檢查哪些參數被髮送並在數據庫上更新它們,但是!我需要ID來更新右行。我應該如何發送數據庫中的行ID和參數?類似於params:{'id':** something_which_return_id **, 'firstname':field.getValue() } –
我更新了我的答案,請看看是否您需要的是 –
嗯。謝謝你的回答。我認爲這是我需要的。我添加了id字段到列模型(查看編輯我的問題),但無論如何它不發送任何東西。怎麼了? –