您的位置:首页 > 产品设计 > UI/UE

MVC4 +EasyUI 使用TreeGrid 方法

2015-07-09 21:26 483 查看
用easyui已经有2年了,换了新环境,要求用mvc开发,所以想把原来的项目直接用mvc重构。

在使用TreeGird的时候出现了问题,发现在转换为treegrid的json 很费劲,一直都是用的easyui 的手动转换类。

突然用mvc 又不想使用json数据拼接的方式,就这样纠结了2天。

今天无意中重新看了一边easyui treegrid的demo,发现原来easyui 早就提供了另外一种解决方案。恍然大悟。

<script type="text/javascript">
$(function () {
$('#tg').treegrid({
title: '菜单导航',
iconCls: 'icon-ok',
url: '/Admin/power/GetList',
width: 700,
height: 250,
method: 'get',
rownumbers: true,
idField: 'NavCode',
treeField: 'NavName',
columns: [[
{ field: 'NavName', title: 'Persons', width: 150 },
{ field: 'NavCode', title: 'Task Name', width: 180 },
{ field: 'iconCls', title: 'Begin Date', width: 80 }
]]
});
})
</script>
<table id="tg"></table>


public ActionResult GetList()
{
List<power_Nav> list = db.power_Nav.ToList().OrderByDescending(m => m.NavCode).ToList();
List<object> result = new List<object>();
foreach (power_Nav nav in list)
{
if (nav.ParentCode.Equals("0"))
{
result.Add(new { NavCode = nav.NavCode, NavName = nav.NavName,iconCls=nav.iconCls });
}
else
{
result.Add(new { NavCode = nav.NavCode, NavName = nav.NavName, iconCls = nav.iconCls, _parentId = nav.ParentCode });
}
}
var json = new
{
total = list.Count,
rows = result
};
return Json(json, JsonRequestBehavior.AllowGet);

}


最后附上效果图

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: