首页 > 其他 > 详细

让datagrid中的columns属性支持对象的子属性(类似user.userName)的方法

时间:2015-02-01 16:15:30      阅读:289      评论:0      收藏:0      [点我收藏+]

前台的datagrid的columns属性如下:(请看红色字体部分)

columns : [ [ {  //每列上的属性、名称设置

            title : ‘编号‘,
            field : ‘userInfoId‘,
            width : 100,
            sortable : true
        },{
            title : ‘姓名‘,
            field : ‘userInfoName‘,
            width : 100,
            sortable : true
        },{
            title : ‘密码‘,
            field : ‘userInfoPassword‘,
            width : 100    
        },{
            title : ‘角色‘,
            field : ‘tbRole‘,
            formatter : function(value,row,index){
                if (row.tbRole){
                    return row.tbRole.roleName;
                } else {
                    return value;
                }},

            width : 100    

        }] ]

说明: 我的后台传给前台datagrid的数据有total和rows,它们的格式如下:

技术分享

rows具体格式如下:
技术分享


即rows里面的每个对象都有tbRights、tbRole、userInfoId、userInfoName、userInfoPassword这几个属性,而属性tbRole本是一个对象,里面有roleId、roleName、tbUserinfos这几个对象。现在需要把tbRole里面的roleName给显示出来,因为直接在field中这样写  fileld:"field:tbRole.roleName‘,这样在前台是显示出不来这一列的,因为fileld的格式不支持点操作符的用法。所以应该用easyui的api中的datagrid自带的一个格式化函数formatter(),formatter的具体说明请查阅api

{
            title : ‘角色‘,
            field : ‘tbRole‘,
            formatter : function(value,row,index){
                if (row.tbRole){
                    return row.tbRole.roleName;
                } else {
                    return value;
                }},

            width : 100    
        }


让datagrid中的columns属性支持对象的子属性(类似user.userName)的方法

原文:http://blog.csdn.net/wangcunhuazi/article/details/43370889

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!