Php 未加载来自JsonStore的数据的ExtJs网格
为什么大家,, 我有extjs3.2、PHP5.3和oracle10gxe 从MyExtJs.php返回的JSON:Php 未加载来自JsonStore的数据的ExtJs网格,php,extjs,json,datastore,Php,Extjs,Json,Datastore,为什么大家,, 我有extjs3.2、PHP5.3和oracle10gxe 从MyExtJs.php返回的JSON: [{“名字”:“艾伦”,“姓氏”:“亚伯”},{“名字”:“桑德尔”,“姓氏”:“安第斯”},{“名字”:“莫哲”,“姓氏”:“阿特金森”},{“名字”:“大卫”,“姓氏”:“奥斯汀”},{“名字”:“赫尔曼”,“姓氏”:“贝尔”},{“名字”:“雪莱”,“姓氏”:“拜达”},{“名字”:“阿米特”,“姓氏”:“班杜”},{“姓氏”:“伊丽莎白”}:“贝茨”},{“姓”:“萨拉
[{“名字”:“艾伦”,“姓氏”:“亚伯”},{“名字”:“桑德尔”,“姓氏”:“安第斯”},{“名字”:“莫哲”,“姓氏”:“阿特金森”},{“名字”:“大卫”,“姓氏”:“奥斯汀”},{“名字”:“赫尔曼”,“姓氏”:“贝尔”},{“名字”:“雪莱”,“姓氏”:“拜达”},{“名字”:“阿米特”,“姓氏”:“班杜”},{“姓氏”:“伊丽莎白”}:“贝茨”},{“姓”:“萨拉”,“姓”:“贝尔”},{“姓”:“大卫”,“姓”:“伯恩斯坦”}]
数据存储:
var store = new Ext.data.JsonStore( {
autoLoad: true,
url: 'MyExtJs.php',
fields: [
{name: 'firstname'},
{name: 'lastname'}
]
});
网格:
var grid = new Ext.grid.GridPanel({
store: store,
columns: [
{
id : 'fname',
header : 'First Name',
width : 160,
sortable : true,
dataIndex: 'firstname'
},
{
id : 'lname',
header : 'Last Name' ,
width : 75,
sortable : true,
dataIndex: 'lastname'
}
],
stripeRows: true,
height: 300,
width: 500,
title: 'Report',
autoExpandColumn: 'lname',
stateful: true,
stateId: 'grid'
});
我只显示网格的标题和边框,但里面没有数据
亲切问候,,
Dan在您的字段配置中包括如下“映射”属性:
var store = new Ext.data.JsonStore( {
autoLoad: true,
url: 'MyExtJs.php',
fields: [
{name: 'firstname', mapping:'FIRST_NAME'},
{name: 'lastname', mapping:'LAST_NAME'}
]
});
读取JSON的不是Ext.data.Store,而是专门使用Ext.data.DataReader来读取来自服务器的数据,存储配置中设置的这个“字段”属性被传递给它的DataReader来配置自己。DataReader为每个被读取的字段使用Ext.data.Field,看,ExtJS的文档很好 JSON字段是“FIRST_NAME”、“LAST_NAME”,在您的数据存储中,您会说“firstname”和“lastname”