我正在尝试使用Paging Toolbar制作ext JS网格面板,但无法确定问题的来源。任何人都可以帮助我 -
var myData = {
record : [
{ name : "Record 0", column1 : "0", column2 : "0" },
{ name : "Record 1", column1 : "1", column2 : "1" },
{ name : "Record 2", column1 : "2", column2 : "2" },
]
};
var fields = [
{name: 'name', mapping : 'name'},
{name: 'column1', mapping : 'column1'},
{name: 'column2', mapping : 'column2'}
];
var store = new Ext.data.Store ({
id :'simpsonsStore',
fields:['name', 'column1', 'column2'],
pageSize: 5,
data: myData,
reader: {
root: 'record',
type: 'json'
}
});
// Column Model shortcut array
var cols = [
{ id : 'name', header: "Record Name", width: 50, sortable: true, dataIndex: 'name'},
{header: "column1", width: 50, sortable: true, dataIndex: 'column1'},
{header: "column2", width: 50, sortable: true, dataIndex: 'column2'}
];
store.load({
params:{
start:0,
limit: 5
}
});
// declare the source Grid
var grid = new Ext.grid.GridPanel({
ddGroup : 'gridDDGroup',
store : store,
columns : cols,
enableDragDrop : true,
stripeRows : true,
autoExpandColumn : 'name',
width : 650,
height : 325,
region : 'west',
title : 'Data Grid',
selModel : new Ext.grid.RowSelectionModel({singleSelect : true}),
dockedItems: [{
xtype: 'pagingtoolbar',
store: store, // same store GridPanel is using
dock: 'bottom',
displayInfo: true
}]
});
var displayPanel = new Ext.Panel({
width : 650,
height : 300,
layout : 'column',
renderTo : Ext.getBody(),
items : [
grid
],
bbar : [
'->',
{
text : 'Reset Example',
handler : function() {
gridStore.loadData(myData);
}
}
]
});
答案 0 :(得分:1)
在displayPanel
的bbar中,处理程序在loadData
变量上调用gridStore
,该变量未在您发布的代码段中定义。
我想你需要在这里声明的商店变量上调用loadData
:
var store = new Ext.data.Store
您也可以致电grid.getStore().loadData();