zhaoziming-arch 2011-09-04 15:00
浏览 255
已采纳

EXTJS4 JSON 多个 嵌套 对象 取出 显示到表格中得问题

最近做EXTJS4 的 东西 遇到了问题 想求教 大家:

对嵌入对象做了mapping 可是 取不到  请朋友们指点:

 

后台发送过来的json 数据
{"totalRecord":26,"employees":{
"id":1,
"dept":{"name":"咨询部",id":3,"description":null,"code":null}
,"user":null,
"title":{"name":"咨询","id":3}
}
}

store:
this.store = Ext.create('Ext.data.Store', {
            fields: ['id',{name:'deptName',mapping:'dept.name'},
                     {name:'titleName',mapping:'title.name'}, ],   
            pageSize:20,
            proxy: {
                type: 'ajax',
                actionMethods : 'post',           
                url : "aa/aaa",          
                timeout : 1000*60*3,          
                reader: {
                    totalProperty:'totalRecord',
                    type: 'json',
                    root: 'employees',
                    remoteSort: true
                }
            }
        });
        
        grid 中的对应列
         this.columns =[
        {xtype: 'rownumberer',width: 50, sortable: false,align:'center'},
        {header: '部门',  dataIndex: 'deptName',width:150},
        {header: '职位',  dataIndex: 'titleName',width:150}
         ],

fireBug 报出的错误obj.dept is null

请问 这个 store 的 fields 应该怎么写?

 
请问 这个 store 的 fields 应该怎么写?

  • 写回答

1条回答 默认 最新

  • weixin_42468936 2011-09-04 20:36
    关注

    [code="java"]
    <br> Ext.onReady(function(){<br> //创建表格数据<br> var datas = {&quot;totalRecord&quot;:26,&quot;employees&quot;:{<br><br> &quot;id&quot;:1,<br><br> &quot;dept&quot;:{&quot;name&quot;:&quot;咨询部&quot;,&quot;id&quot;:3,&quot;description&quot;:null,&quot;code&quot;:null}, //你的数据id前面少了“<br> &quot;user&quot;:null,<br><br> &quot;title&quot;:{&quot;name&quot;:&quot;咨询&quot;,&quot;id&quot;:3}<br><br> }<br><br> };</p> <pre><code> //创建Grid表格组件 Ext.create(&#39;Ext.grid.Panel&#39;,{ title : &#39;简单Grid表格示例&#39;, renderTo: Ext.getBody(), width:200, height:130, frame:true, viewConfig: { forceFit : true, stripeRows: true//在表格中显示斑马线 }, store: {//配置数据源 fields: [ {name:&#39;id&#39;,mapping:&#39;id&#39;}, {name:&#39;deptName&#39;,mapping:&#39;dept.name&#39;}, {name:&#39;titleName&#39;,mapping:&#39;title.name&#39;} ], proxy: { type: &#39;memory&#39;,//Ext.data.proxy.Memory内存代理 data : datas,//读取内嵌数据 reader: { totalProperty:&#39;totalRecord&#39;, type: &#39;json&#39;, root: &#39;employees&#39; } }, autoLoad: true//自动加载 }, columns: [//配置表格列 {header: &quot;id&quot;, width: 30, dataIndex: &#39;id&#39;, sortable: true}, {header: &quot;部门&quot;, width: 80, dataIndex: &#39;deptName&#39;, sortable: true}, {header: &quot;职位&quot;, width: 80, dataIndex: &#39;titleName&#39;, sortable: true} ] }); }); </code></pre> <p>
    [/code]

    上面为本地测试代码 数据显示成功了 呵呵

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥20 电脑鼠标键盘不好使了
  • ¥15 求糕手!用matlab求解目标规划模型🙏
  • ¥15 画出的分类图不对,求解答一下
  • ¥20 springboot和springcloud版本问题
  • ¥15 ps2手柄控制树莓派小车
  • ¥30 C#:vsto powerpoint的外接程序
  • ¥30 stata将do文件代码转化为ado文件
  • ¥15 两个同维数组相比,不同位置、出现重复比无意义,而不同位置、不出现重复比,则有意义。把有意义的两个数组放入新的集合MK中。
  • ¥15 写一个可直接调用的函数,将32位有符号数转成另一个无符号的数
  • ¥15 CMAKE+VS2019+QT5.15.2组合进行二次编译