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]

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

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

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题