var record = new Ext.data.Record.create([
{name: '数据库中字段名'},
{name: '数据库中字段名'}
………………
]); //定义从proxy中读取的字段
var proxy = new Ext.data.HttpProxy({
url: '<?=site_url('输出JSON的路径');?>',
method: 'POST'
});//定义路径
var reader = new Ext.data.JsonReader({
root: 'results' //这里是和PHP结合的一个关键点。很多人读取不出数据,应该是这里出的问题。请注意root: 'results' 中results和Codeigniter函数输出部分'({"total":"' . $rows . '","results":' . $data . '})'。results就是读取$data信息。
},
record //这里调用record,将Ext中要读取的字段和results中的数据结合。
);
var store = new Ext.data.Store({
proxy: proxy,
reader: reader
});//这里没什么好说的。就是将所有配置绑定在一起。
var columns = new Ext.grid.ColumnModel([
new Ext.grid.RowNumberer(),
{header: "Grid里列的名称", dataIndex: '对应字段'},
{header: "Grid里列的名称", dataIndex: '对应字段', align : 'center',//注意,这里并没有结束,下面是对字段的判断
renderer : function(字段) {
if (字段 == "true"){return "<img src='<?php echo base_url();?>/图片路径/true.png'>";}
}
},
]);//这里是对Grid进行排版。
var grid = new Ext.grid.GridPanel({
store: store,
cm: columns,
selModel: new Ext.grid.RowSelectionModel({singleSelect:true}),
}
); //好了。将所有设置,调用进Grid。
store.load({ params: { object:'grid'} }); //读取数据并POST值