一、View:

1、定义输入控件

<input id="ParentId" name="ParentId">

2、绑定combotree

$('#ParentId').combotree({
url: "/Action/GetMenuTreeData/",
method: "post",
lines: true,
required: true,
onClick: function (node) {
          //自动生成排序号
$.post("/Action/GetMenuDisOrder/", { pId: node.id }, function (data) {
$("#DisOrder").val(data);
});
//自动生成当前层级
$.post("/Action/GetMenuDisLevel/", { pId: node.id }, function (data) {
$("#DisLevel").val(data);
}); }
});

二、Controller:

[HttpPost]
public ActionResult GetMenuTreeData()
{
//取从数据字典中取中Menu对应的ID号
var dic = _dictionaryService.Single(o => o.Name == "MENU" && o.IsDeleted == false);
var menuId = dic.Id; //查询所有菜单信息
var menus = _actionService.Where(o => o.IsDeleted == false && o.OperationType == menuId && o.IsShow == true, o => o.DisOrder).ToList(); //获取根结点信息
RSCC.Model.TreeNode rootNode = _actionService.Single(o => o.ParentId == 0).ToNode(); //3、根据根结点对应的ID,查询其所有的子节点
rootNode.children = FillSonNodes(menus, rootNode.id); return Content("[" + operationContext.ToJson(rootNode) + "]");
}
/// <summary>
/// 递归生成子节点集合
/// </summary>
/// <param name="listPermission"></param>
/// <param name="parentId"></param>
/// <returns></returns>
List<RSCC.Model.TreeNode> FillSonNodes(List<RSCC.Model.Action> list, int parentId)
{
List<RSCC.Model.TreeNode> sonNodes = null; //循环权限集合,查找子权限
foreach (RSCC.Model.Action m in list)
{
//查找到子权限
if (m.ParentId == parentId)
{
//实例化子节点集合
if (sonNodes == null)
sonNodes = new List<RSCC.Model.TreeNode>(); //将子权限转成子节点
RSCC.Model.TreeNode sonNode = m.ToNode();
//将子节点加入子节点集合
sonNodes.Add(sonNode);
//递归为子节点查找子节点集合
sonNode.children = FillSonNodes(list, sonNode.id);
}
} return sonNodes;
}

三、显示效果:

easyui combotree的使用示例的更多相关文章

  1. EasyUI ComboTree无限层级异步加载示例

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="EasuUIDemoTree.a ...

  2. 表单(上)EasyUI Form 表单、EasyUI Validatebox 验证框、EasyUI Combobox 组合框、EasyUI Combo 组合、EasyUI Combotree 组合树

    EasyUI Form 表单 通过 $.fn.form.defaults 重写默认的 defaults. 表单(form)提供多种方法来执行带有表单字段的动作,比如 ajax 提交.加载.清除,等等. ...

  3. Jquery EasyUI Combotree和 EasyUI tree展开所有父节点和获取完整路径

    Jquery EasyUI Combotree展开所有父节点 Jquery EasyUI Combotree获取树完整路径 Jquery EasyUI tree展开所有父节点 Jquery EasyU ...

  4. Jquery EasyUI Combotree根据选中的值展开所有父节点

    Jquery EasyUI Combotree根据选中的值展开所有父节点  Jquery EasyUI Combotree 展开父节点, Jquery EasyUI Combotree根据子节点选中的 ...

  5. Jquery EasyUI Combotree 初始化赋值

    Jquery EasyUI Combotree 初始化赋值 ================================ ©Copyright 蕃薯耀 2018年5月7日 https://www. ...

  6. Jquery EasyUI Combotree只能选择叶子节点且叶子节点有多选框

    Jquery EasyUI Combotree只能选择叶子节点且叶子节点有多选框 Jquery EasyUI Combotree单选框,Jquery EasyUI Combotree只能选择叶子节点 ...

  7. easyui combotree不让父级选中

    easyui combotree不让父级选中? <ul id="combotree"></ul> $(function () { $("#comb ...

  8. easyui combotree 异步树 前端写法js

    简要说下使用场景: combotree下拉框第一次加载时,请求一个接口,页面上展示顶层节点们(可以理解为最顶层的节点,比如所有的一级公司): 当点击其中一个节点前面的小三角展开时,再次请求服务器接口( ...

  9. EasyUI Combotree只选择叶子节点

    EasyUI Combotree的方法拓展自Combo和Tree.而Tree有一个onBeforSelect事件来帮助我们实现只选择叶子节点的功能. Tree事件需要 'node' 参数,它包括下列属 ...

随机推荐

  1. thinkphp 输入过滤

    永远不要相信客户端提交的数据,所以对于输入数据的过滤势在必行,我们建议: 开启令牌验证避免数据的重复提交: 使用自动验证和自动完成机制进行初步过滤: 使用系统提供的I函数获取用户输入数据: 对不同的应 ...

  2. NX二次开发-UFUN创建圆锥UF_MODL_create_cone1

    NX11+VS2013 #include <uf.h> #include <uf_modl.h> UF_initialize(); //创建圆锥 UF_FEATURE_SIGN ...

  3. LeetCode 746. Min Cost Climbing Stairs (使用最小花费爬楼梯)

    题目标签:Dynamic Programming 题目给了我们一组 cost,让我们用最小的cost 走完楼梯,可以从index 0 或者 index 1 出发. 因为每次可以选择走一步,还是走两步, ...

  4. UVA 240 Variable Radix Huffman Encoding

    题目链接:https://vjudge.net/problem/UVA-240 题目大意 哈夫曼编码是一种最优编码方法.根据已知源字母表中字符出现的频率,将源字母表中字符编码为目标字母表中字符,最优的 ...

  5. 如何把本地文件上传github

    1.$ git config --global user.name "xxx" 2.$ git config --global user.email xxx@qq.com 3.进入 ...

  6. Red and Black 模板题 /// BFS oj22063

    题目大意: Description There is a rectangular room, covered with square tiles. Each tile is colored eithe ...

  7. vue 父子组件、兄弟组件传值

    参考文章:Vue2.0子同级组件之间数据交互 1.父组件可以使用 props 把数据传给子组件.2.子组件可以使用 $emit 触发父组件的自定义事件. (一)父组件给子组件传值,关键字:props ...

  8. ASP.NET打开项目错误:将指定的计数添加到该信号量中会导致其超过最大计数。

    1.错误如图 2.解决方案 重启IIS即可,运行-> 输入IISRESET 命令 即可重启IIS,如图

  9. IdentityServer_0_参考资料

    官方 项目地址:https://github.com/IdentityServer/IdentityServer4 官方Demo:https://github.com/IdentityServer/I ...

  10. Web安全之跨站伪造请求(CSRF)

    CSRF简介 CSRF全称跨站伪造请求(Cross-site request forgery)也称为one click attack/session riding,还可以缩写为XSRF 通俗说就是利用 ...