我是新來的Ext JS,我嘗試過「拖放」,當我拖動行時它工作正常。我現在正在嘗試的是從左邊的網格中拖放一行(來自MySQL的一個字段),並將它放在右側的網格上,該網格將數據庫表中的數據作爲列。將行拖放到列
我現在使用的是代碼,
Ext.require([
'Ext.grid.*',
'Ext.data.*',
'Ext.dd.*'
]);
Ext.define('DataObject', {
extend: 'Ext.data.Model',
fields: ['Field']
});
Ext.onReady(function(){
var firstGridStore = Ext.create('Ext.data.Store', {
model: 'DataObject',
autoLoad: true,
pageSize: 4,
proxy: {
type: 'ajax',
url : 'user.php',
reader: {
type: 'json',
root: 'users'
}
}
});
// Column Model shortcut array
var columns = [
{text: "Fields", sortable: true, width: 50, dataIndex: 'Field'}
];
var firstGrid = Ext.create('Ext.grid.Panel', {
multiSelect: true,
viewConfig: {
plugins: {
ptype: 'gridviewdragdrop',
dragGroup: 'firstGridDDGroup',
dropGroup: 'secondGridDDGroup'
},
listeners: {
drop: function(node, data, dropRec, dropPosition) {
var dropOn = dropRec ? ' ' + dropPosition + ' ' + dropRec.get('name') : ' on empty view';
Ext.example.msg("Drag from right to left", 'Dropped ' + data.records[0].get('name') + dropOn);
}
}
},
store : firstGridStore,
columns : columns,
stripeRows : true,
title : 'First Grid',
margins : '0 2 0 0'
});
var secondGridStore = Ext.create('Ext.data.Store', {
model: 'DataObject'
});
// create the destination Grid
var secondGrid = Ext.create('Ext.grid.Panel', {
viewConfig: {
plugins: {
ptype: 'gridviewdragdrop',
dragGroup: 'secondGridDDGroup',
dropGroup: 'firstGridDDGroup'
},
listeners: {
drop: function(node, data, dropRec, dropPosition) {
var dropOn = dropRec ? ' ' + dropPosition + ' ' + dropRec.get('name') : ' on empty view';
Ext.example.msg("Drag from left to right", 'Dropped ' + data.records[0].get('name') + dropOn);
}
}
},
store : secondGridStore,
columns : columns,
stripeRows : true,
title : 'Second Grid',
margins : '0 0 0 3'
});
//Simple 'border layout' panel to house both grids
var displayPanel = Ext.create('Ext.Panel', {
layout: 'fit',
height : 300,
layout : {
type: 'hbox',
align: 'stretch',
padding: 5
},
renderTo : 'panel',
defaults : { flex : 1 }, //auto stretch
items : [
firstGrid,
secondGrid
],
dockedItems: {
xtype: 'toolbar',
dock: 'bottom',
items: ['->', // Fill
{
text: 'Reset both grids',
handler: function(){
//refresh source grid
firstGridStore.loadData(myData);
//purge destination grid
secondGridStore.removeAll();
}
}]
}
});
});
從左電網領域應該是針對我的要求正確的網格數據的標題(來自數據庫)。
左電網將具有類似網格數據:
場
ID
名
數據
左格拖動數據,對電網應該有這樣的數據之後:
ID
注意:這裏ly id被拖拽。
有人可以幫我嗎?
謝謝。
不知道嗎?沒有人? – 2012-07-31 09:58:28