1、参考资料

  2、相关代码

    1. 前端
      1. <input id="DeptId" name="DeptId" value="请选择" /> Id对应Model中需要生成的数据编号,如需生成部门combotree,属性为DeptId
         
        2、 $(document).ready(function () {
                $('#DeptId').combotree({
                    url: '@Url.Action("GetTree", "Dept")',
                    //选择树节点触发事件  
                    onSelect: function (node) {
                        //返回树对象  
                        var tree = $(this).tree;
                        //选中的节点是否为叶子节点,如果不是叶子节点,清除选中  
                        var isLeaf = tree('isLeaf', node.target);
                        if (!isLeaf) {
                            //清除选中  
                            $('#DeptId').combotree('clear');
                        }
                    }
                });
         
                 $('#DeptId').combotree('setValue',@Model.DeptId==0?'':@Model.DeptId);  
            });
    2. 后台
       public ActionResult GetTree()
              {
                  var list =获取包含两级关系的数据,可自行扩展成多级;
       
                  var result = new List<JsonTreeNode>();
                  foreach (var fac in list)
                  {
                      var facNode = new JsonTreeNode();  //一级节点
                      facNode.id = "";  
                      facNode.text = fac.FactoryName;
                      facNode.@checked = "disabled";
       
                      var depChildren = new List<JsonTreeNode>();
                      var depList =//获取一级节点下的二级节点数据;
       
                      if (depList.Count() > 0)
                      {
                          foreach (var dep in depList)
                          {
                              JsonTreeNode depNode = new JsonTreeNode();
                              depNode.id = dep.DepId.ToString();
                              depNode.text = dep.DepName;
                              depNode.@checked = "disabled";
       
                              depChildren.Add(depNode);
                          }
                          facNode.children = depChildren;
                          result.Add(facNode);
                      }
                  }
       
                  return Json(result);
              }

  3、注意事项

    1. 前端代码必须先后执行,如果在第一个combotree()添加setValue设置,则无效
      $('#DeptId').combotree()        $('#DeptId').combotree('setValue',@Model.DeptId==0?'':@Model.DeptId);  //加载时默认选择
    2. onSelect设置为选择非叶子节点时则清空数据
 
 
 
 

ComboTree使用的更多相关文章

  1. ComboTree 的json格式和引用

    在easyui内,用 <select>实现combotree. <td ><select class="easyui-combotree" url=& ...

  2. easyui combotree的使用

    前台HTML: <div class="search-container"> <table class="search-container-table& ...

  3. 【EasyUI】combotree和combobox模糊查询

    这里说的模糊查询指在输入框输入,然后自动在下拉框中显示匹配结果,类似Google搜索提示 EasyUI库已经实现了combobox的查询过滤功能,但只能从头匹配,原因是EasyUI库的代码限制: fi ...

  4. 基于EasyUi ComBotree树修改 父节点选择问题

    本人在使用 Easy UI 期间发现了一个不太适合项目的bug,可能也不算bug把 . 毕竟不同项目背景 取舍不同. 我在做网元树选择的时候  发现当选取父节点后,子节点都会被选择  返回  .但是如 ...

  5. easyui combotree下拉框多选赋值

    发现jquery.easyui.min.js 1.3.4版本的用setValues给多选下拉框赋值不成功,只能用1.3.1版本的 Html代码: <input id="ProductL ...

  6. ASP.MVC EASY UI 入门之 —— Tree & ComboTree

    1.常规的EASY UI的tree和comboTree代码基本是官方的DEMO都有的,虽然很简单,但是还是要实践的做一次,才能更清晰的了解和使用它!先上效果图 因为用的是code first,所以数据 ...

  7. easyui combotree 只能选择子节点

    //区号只能选子节点 $("#quhao").combotree({ onBeforeSelect: function (node) { //返回树对象 var tree = $( ...

  8. easyui 之ComboTree 用法Demo

    实现效果如下: HTML部分: <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="ser ...

  9. easyui combotree 默认 初始化时就选中

    做得权限管理系统,用combotree来控制权限,combotree是通过后台json来初始化,但是前台不是选中状态. 下面是核心代码已经标红. $('#txtTree').combotree({ m ...

  10. Easyui Combotree问题及其相关

    Easyui的setValue方法无效 今天在开发项目的时候,遇到第一个很奇怪的问题:EasyUI的setValue方法无效. $('#department_parent').combotree('s ...

随机推荐

  1. JS内存泄漏 和Chrome 内存分析工具简介(摘)

    原文地址:http://web.jobbole.com/88463/ JavaScript 中 4 种常见的内存泄露陷阱   原文:Sebastián Peyrott 译文:伯乐在线专栏作者 - AR ...

  2. DNS服务器搭建

    注意正式运行的dns服务器主dns设置 中没有启用转发器,所以部分网页如taobao解析时可能很慢.开启转发器即可转发器地址指向电信dns. [root@master ~]# lsb_release ...

  3. SQL中各数据类型的长度、精度

    在 Microsoft? SQL Server? 中,每个列.局部变量.表达式和参数都有一个相关的数据类型,这是指定对象可持有的数据类型(整型.字符.money 等等)的特性. SQL Server ...

  4. [Android开发系列]IT博客应用V1.3

    首先,感谢使用这款软件并给我意见的朋友们,有你们的意见,才有了这个版本. 其次,检索功能和分类筛选功能(如果是你提的意见,记得在下面mark哦,毕竟读代码你能发现,其实发意见这个就是用自己的邮箱给自己 ...

  5. 【学习笔记】【C语言】指向结构体的指针

    1.指向结构体的指针的定义 struct Student *p;  2.利用指针访问结构体的成员 1> (*p).成员名称 2> p->成员名称 3.代码 #include < ...

  6. 【转】使用Memcached提高.NET应用程序的性能

    在应用程序运行的过程中总会有一些经常需要访问并且变化不频繁的数据,如果每次获取这些数据都需要从数据库或者外部文件系统中去读取,性能肯定会受到影响,所以通常的做法就是将这部分数据缓存起来,只要数据没有发 ...

  7. C# 语言如何获取json格式的数据,不用javascript用c#实现。。。

    {'state' : 1,'data':{'list':[{'id': 123, 'name': '诸葛天邪','level': 10,'country': 1,}]}} 比如我要获取里面的 id 该 ...

  8. Android开发之计算器(一)界面设计

    计算器开发主要涉及到LinearLayout布局.EditText.Button的使用.为android入门基础内容. 打开android studio选择创建一个新的工程,应用程序的名称为Calcu ...

  9. C#各种常用开源框架-支持开源!分享!

    下面罗列了开发及学习过程中所涉及的开源类库的列表! AForge.NET Accord.NET NAudio nVLC Speex C# WebServer FFmpeg FFmpeg.NET Flo ...

  10. 前端工程搭建NodeJs+gulp+bower

    需要node.npm的事先安装!! 1.nodejs安装程序会在环境变量中添加两个变量: 系统环境变量中:path 增加C:\Program Files\nodejs\ 因为在该目下存在node.ex ...