码迷,mamicode.com
首页 > 其他好文 > 详细

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

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

标签:datagrid中的columns属性   让columns属性支持对象的子属性   类似user.username   

前台的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)的方法

标签:datagrid中的columns属性   让columns属性支持对象的子属性   类似user.username   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!