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. C#中ToString和Formate格式大全

    C#中ToString格式大全 stringstr1 =); //result: 56,789.0 stringstr2 =); //result: 56,789.00 stringstr3 =); ...

  2. php中sprintf与printf函数用法区别

    下面是一个示例:四舍五入保留小数点后两位  代码如下 复制代码 <?php$num1 = 21;echo sprintf("%0.2f",$num1)."<b ...

  3. php 检查email电子邮件函数(奇葩写法)

    以前写的一个PHP表单电子邮件发送程序,其中采用如下方法来验证电子邮件地址格式是否正确: 代码如下 复制代码 eregi("^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0 ...

  4. JavaScript学习笔记 - 进阶篇(2)- 数组

    什么是数组 我们知道变量用来存储数据,一个变量只能存储一个内容.假设你想存储10个人的姓名或者存储20个人的数学成绩,就需要10个或20个变量来存储,如果需要存储更多数据,那就会变的更麻烦.我们用数组 ...

  5. Unity Shader Prpperties

    在 Unity 的材质面板(material inspector)上可以定义一系列的参数,对应于 Shader 中的的属性(Properties) 语法如下: Properties { Propert ...

  6. eclipse优化(部分)

    1. 增强Eclipse(MyEclipse)输入代码提示功能 一般设置: (1). 打开Eclipse,选择打开" Window -- Preferences". (2). 在目 ...

  7. 1. 走进java

    走进java 1.java简介 1.1 java分类: 1.2 开发包JDK 1.3.一处编译,到处运行的特点 2. 配置开发环境 3. java基本语法 3.1关键字和保留字 3.2 标识符命名规则 ...

  8. SilverLight命名空间详解-新手入门

    1.核心命名空间 1.xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"是silverlight的核 ...

  9. PCB特征阻抗计算神器Polar SI9000安装及破解指南

    近年来,IC集成度的提高和应用,其信号传输频率和速度越来越高,因而在印制板导线中,信号传输(发射)高到某一定值后,便会受到印制板导线本身的影响,从而导致传 输信号的严重失真或完全丧失.这表明,PCB导 ...

  10. ASP.ENT Core Linux 下 为 donet创建守护进程(转载)

    原文地址:http://www.cnblogs.com/savorboard/p/dotnetcore-supervisor.html 前言 在上篇文章中介绍了如何在 Docker 容器中部署我们的 ...