2014/3/14 easyUI中treeGrid json数据格式

在使用easyUI 的treeGrid的时候,很多时候我们从数据库取出来的数据treeGrid却不能读取显示成一个树:如下

{
menuCode: "a00",
menuName: "管理员首页",
menuUrl: "/main/admin/index.action",
menuPCode: "-1",
isLeaf: "0",
status: "1",
icon: null,
createUser: "system",
createDate: "2014-01-24 17:10:25",
modifyUser: "system",
modifyDate: "2014-01-24 17:10:25"
},
{
menuCode: "a0001",
menuName: "修改密码",
menuUrl: "/main/admin/modifyPwd.action",
menuPCode: "a00",
isLeaf: "1",
status: "1",
icon: null,
createUser: "system",
createDate: "2014-01-24 17:10:25",
modifyUser: "system",
modifyDate: "2014-01-24 17:10:25"
},
{
menuCode: "a0002",
menuName: "图片上传",
menuUrl: "/image/admin/uploadImage.action",
menuPCode: "a00",
isLeaf: "1",
status: "1",
icon: null,
createUser: "system",
createDate: "2014-01-24 17:10:25",
modifyUser: "system",
modifyDate: "2014-01-24 17:10:25"
},
例如以上是我从数据库表中取的值并转化为json格式,逻辑上我是靠menuCode和menuPcode来表示父子的继承关系,但是easyUI的treeGrid不买账,她可不会理解你的父子关系是通过menuCode和menuPcode表现的

于是乎有人觉得json格式应该如下:



通过设置children来方便treeGrid解析,于是乎有人开始对取出来的表数据进行遍历啊,拼接字符串啦之类的操作,往这个格式上拼凑,其实完全没必要


解决办法:

使用谷歌浏览器打开如下链接


打开对应的json文件:



多了个_parentId,就是这个很重要的字段才使得treeGrid识别出父子关系


那么如何给自己的json格式增加这个字段呢?

loadFilter: function (data){
				resultData = data;
				if(ajaxResultJudge.analyseResult(data,0) ==true){
					data.rows = data.data;
					$.each(data.rows, function(i) {
						var parentId = data.rows[i].menuPCode;
						if(parentId != "-1"){
							data.rows[i]._parentId = parentId;
						}
					});				
					data.total = data.more;
					return data;
				}else{
					return ajaxResultJudge.transformToUI(null);
				}
				resultData = data;
			},







  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值