为了账号安全,请及时绑定邮箱和手机立即绑定

asp.net 中用easyui中的treegird的简单使用

标签:
C#

几乎每个‘数人头’项目中都会用到的功能,这里先记下来,以后直接到这里复制代码就行了,ASP.NET MVC中的使用

图片描述

数据库用户表中的除了有个parentid父级ID外,我还多加了以个字段,parentpath,表示父级路径,把该用户的所有上级ID全都存起来,以,间隔,如用户ID=5的低级路径 为:,1,2,3,4, 最前面加多一个,是为了查询该用户的下级用户总数方便

下面是HTML代码:

@{
ViewBag.Title = "推荐图谱";
}
<link href="~/jquery-easyui-1.5.4.1/themes/default/easyui.css" rel="stylesheet" />
<link href="~/jquery-easyui-1.5.4.1/themes/icon.css" rel="stylesheet" />
<script class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="~/jquery-easyui-1.5.4.1/jquery.min.js"></script>
<script class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="~/jquery-easyui-1.5.4.1/jquery.easyui.min.js"></script>
<div class="layui-tab layui-tab-brief" lay-filter="docDemoTabBrief">
<ul class="layui-tab-title">
<li class="layui-this">@ViewBag.Title</li>
</ul>
</div>

<table title="推荐图谱" class="easyui-treegrid" style="width:700px;height:300px"
url="/Userinfo/TJTuPu_Ajax"
rownumbers="true"
idField="id" treeField="username">
<thead>
<tr>
<th field="username">用户名</th>
<th field="regdate">注册时间</th>
<th field="xjcount" >下级总数</th>
</tr>
</thead>
</table>

下面是相应的后台代码:
//推荐图谱-取数据
public ActionResult TJTuPu_Ajax(int? id)
{
ArrayList arr = new ArrayList();
if (id == null)
{
//取自己
Model.Userinfo u = base.GetLoginUser();
int xjcount = udal.CalcCount($"parentpath like '%,{u.id},%'");
string state = xjcount == 0 ? "open" : "closed";
arr.Add(new { id = u.id, username = u.username, regdate = u.createtime.ToString("yyyy-MM-dd"), xjcount = xjcount, state = state, });
}
else
{
//根据ID取下一级
List<Model.Userinfo> list_u = udal.GetListArray($"parentid={id.Value}");
foreach (var u in list_u)
{
int xjcount = udal.CalcCount($"parentpath like '%,{u.id},%'");
string state = xjcount == 0 ? "open" : "closed";
arr.Add(new { id = u.id, username = u.username, regdate = u.createtime.ToString("yyyy-MM-dd"), xjcount = xjcount, state = state, });
}
}
return Json(arr);
}

其实以上的代码都是直接从easyui官网上的demo里复制出来的,我只是把他的后台php示例代码改为了c#而已

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消