首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Ajax >

Ext3.1版本 GRID 列表的store接受不到json格式的数据!解决方案

2012-12-31 
Ext3.1版本 GRID 列表的store接受不到json格式的数据!rt郁闷store 在接收json格式数据之后传进来的值没有

Ext3.1版本 GRID 列表的store接受不到json格式的数据!
rt   郁闷  store 在接收json格式数据之后传进来的值没有进到store的data里面去 而是进到store的json里面去了 求大能帮助 , 如下代码:


     var cm=new Ext.grid.ColumnModel([
        { header: "ID",dataIndex:"ID",width:'100px'},
        { header: "用户ID",dataIndex:"USERID",width:'100px',hidden:true},
        { header: "用户",dataIndex:"USERNAME",width:'200px'},
        { header: "密码",dataIndex:"PASSWORD",width:'100px',hidden:true},
        { header: "公司ID",dataIndex:"COMPANYID",width:'100px',hidden:true},
        { header: "公司",dataIndex:"COMPANYNAME",width:'100px'},
        { header: "分组ID",dataIndex:"GROUPID",width:'100px',hidden:true},
        { header: "分组",dataIndex:"GROUPNAME",width:'100px'},
        { header: "职位角色ID",dataIndex:"ROLEID",width:'100px',hidden:true},
        { header: "职位角色",dataIndex:"ROLENAME",width:'100px'},
        { header: "工作职位",dataIndex:"DEPART",width:'100px'},
        { header: "备用",dataIndex:"IMEI",width:'100px'},
        { header: "手机",dataIndex:"MOB",width:'100px'},
        { header: "注册状态",dataIndex:"REGSTATUS",width:'100px',hidden:true},
        { header: "注册日期",dataIndex:"REGDATE",width:'100px'},
        { header: "电子邮件",dataIndex:"EMAIL",width:'100px'},
        { header: "备用",dataIndex:"UTYPE",width:'100px',hidden:true},
        { header: "创建人",dataIndex:"CREATER",width:'100px'},
        { header: "创建日期",dataIndex:"CREATEDATE",width:'100px'},
        { header: "性别",dataIndex:"SEX",width:'100px'},
        { header: "行政代码",dataIndex:"QU",width:'100px'},
        { header: "公司代码",dataIndex:"COMPANYCODE",width:'100px'}
     ]);

   var store = new Ext.data.Store({
       reader : new Ext.data.ArrayReader({},[
       {name:'ID'},
       {name:'USERID'},
       {name:'USERNAME'},
       {name:'PASSWORD'},
       {name:'COMPANYID'},
       {name:'COMPANYNAME'},
       {name:'GROUPID'},
       {name:'GROUPNAME'},
       {name:'ROLEID'},
       {name:'ROLENAME'},
       {name:'DEPART'},
       {name:'IMEI'},
       {name:'MOB'},
       {name:'REGSTATUS'},
       {name:'REGDATE'},


       {name:'EMAIL'},
       {name:'UTYPE'},
       {name:'CREATER'},
       {name:'CREATEDATE'},
       {name:'SEX'},
       {name:'QU'},
       {name:'COMPANYCODE'}
       ])
    });

 var grid = new Ext.grid.GridPanel({
        align : 'center',
        border : false,
        height : document.body.clientHeight,
        cm : cm,
        store : store,
        tbar : [
        {xtype:'button',width:'60',iconCls:'icon-add',text:'新增'},'-',
        {xtype:'button',width:'60',iconCls:'icon-edit',text:'修改'},'-',
        {xtype:'button',width:'60',iconCls:'icon-delete',text:'删除'},'-',
        {xtype:'button',width:'60',iconCls:'icon-view',text:'查看'}
        ]
    });
var wnd = new Ext.Viewport({
   layout:'border',
   frame:false,
   expandOnShow:false,
   autoScroll :true,
   items:[ mPanel],
   listeners :  {
     afterrender  : function(){    
Ext.Ajax.request({
          url: basePath+'UTSERVLET',
success: function(s){
 store.loadData(Ext.util.JSON.decode(s.responseText));
}
   }); 
 }
}
});
wnd.render();
wnd.doLayout();
/** s.responseText = [{"ID":259,"USERID":"4035","USERNAME":"曾诗韵","PASSWORD":"4035","COMPANYID":105,"COMPANYNAME":"盐田","GROUPID":0,"GROUPNAME":"","ROLEID":1,"ROLENAME":"访销组","DEPART":"","IMEI":"","MOB":"","REGSTATUS":1,"REGDATE":"2007-05-12","EMAIL":"","UCLASS":1,"STATUS":0,"UTYPE":"","CREATER":"","CREATEDATE":"","SEX":"","QU":"440308","COMPANYCODE":"0140","validdate":""}] */



加一段store 的 debugger截图,
    
Ext3.1版本 GRID 列表的store接受不到json格式的数据!解决方案

可以很明显的看到值没有进到data里面 而是进入了json里面  求解惑,  列表有显示条数但是所有值都是空的!
[解决办法]
ArrayReader 是读取array的不是读取Json的,所以你要这么写的话,2种修改
第一个种改成jsonstore,第二种修改后台数据,让它输出array数组

热点排行