这几天时间比较空闲的我把easyui中比较难的控件回顾一遍

这次的总结是easyui中的combotree

easyui的中文文档上说:combotree结合选择控制和下拉树,类似于combobox只是替换了列表为tree控件,combotree 支持树复选框,可以方便的实现多选

也就是下拉框组合下拉树,获值的方法和下拉框的获值一样都是

valueField: 'XX',

textField: 'XXX',

只不过tree有些麻烦,具体引用文档中写的不全,我以我自己的想法写一下,基本上格式如下

    id: ,
text: 'Languages',
children: [{
id: ,
text: 'Java'
},{
id: ,
text: 'C++'
}]

做类别用下拉树做的时候,父类别下有多个子类别,读取用json返回的内容

列出所有的一级类别,还要列出每个类别里的子类别,这时候我们用到一种算法--递归,可以直接或间接的调用自身

首先你在数据的分类表一定要是类别id,类别名称,父id这种格式,

建个list<NewsClassJson>的类然后里面先判断父id是否为空,为空的就是父类别,调出所有父类别,将列出的列表放入定义的list<类别表>中然后让类别id==某个选中类别的父id也放入list<类别表>中

    public class NewsClassJson
{ /// <summary>
/// ID
/// </summary>
public string id { get; set; }
/// <summary>
/// 分类
/// </summary>
public string text { get; set; } /// 子类
/// </summary>
public List<NewsClassJson> children { get; set; }
/// <summary>
/// 父ID
/// </summary>
public string ParentId { get; set; } }

将上面NewsClassJson实例化,然后foreach循环添加进去,在将其以json输出,

就ok了

easyui之combotree的更多相关文章

  1. easyui中combotree只能选子选项,父级不被选中

    前言 前几天面试遇到一个需求(easyui中combotree只能选子选项,父级不被选中),回来特意整理下,大概的思想是如果该tree的节点被选中是判定一下是否有子节点,如果没有就说明是最终节点了,步 ...

  2. 第二百二十七节,jQuery EasyUI,ComboTree(树型下拉框)组件

    jQuery EasyUI,ComboTree(树型下拉框)组件 学习要点: 1.加载方式 2.属性列表 3.方法列表 本节课重点了解EasyUI中ComboTree(树型下拉框)组件的使用方法,这个 ...

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

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

  4. easyui 之ComboTree 用法Demo

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

  5. easyUI combobox combotree 模糊查询,带上下键选择功能,待完善。。。。

    /2017年4月9日 11:52:36 /** * combobox和combotree模糊查询 * combotree 结果带两级父节点(手动设置数量) * 键盘上下键选择叶子节点 * 键盘回车键设 ...

  6. EasyUI中combotree允许多选的时候onSelect事件会重复触发onCheck事件

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgEAAADkCAIAAACOkmAuAAAgAElEQVR4nO2dW2wc15nnO0EQBJsdzA

  7. EasyUI 的 combotree 加载数据后折叠起来,并且只允许单击子节点的写法

    $(source).combotree({ url: '', width: kuan, valueField: 'id', textField: 'text', onlyLeafCheck: true ...

  8. easyUI的combotree的树的懒加载。

    var tree=[{    "id":1,    "text":"My Documents",    "children&quo ...

  9. Easyui控制combotree只能选择叶子节点

    $(function() { $('#tt').combotree({ url: 'getTree.do', onBeforeSelect: function(node) { if (!$(this) ...

随机推荐

  1. 百度之星资格赛——Disk Schedule(双调旅行商问题)

    Disk Schedule Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) To ...

  2. Struts2学习笔记1

     一.下载struts2.0.1 http://struts.apache.org/downloads.html,下载struts-2.0.1-all.zip,这个压缩包中包括了开发struts2所需 ...

  3. Node.js&NPM的安装与配置(转)

    Node.js安装与配置 Node.js已经诞生两年有余,由于一直处于快速开发中,过去的一些安装配置介绍多数针对0.4.x版本而言的,并非适合最新的0.6.x的版本 情况了,对此,我们将在0.6.x的 ...

  4. redhat 6 配置 yum 源的两种方法

      由于 redhat的yum在线更新是收费的,如果没有注册的话不能使用,如果要使用,需将redhat的yum卸载后,重启安装,再配置其他源. 本文包括配置本地源及第三方源.第三方源包括:网易,epe ...

  5. JS问题Uncaught ReferenceError:XXXX is not defined

    背景: html中一个table,table中进行分页.每行后面有一系列操作,如删除,修改.现在以删除为例说明问题. 实现方式: 使用button,在onclick中调用js函数,js函数中传递参数如 ...

  6. Socket解决粘包问题1

    粘包是指发送端发送的包速度过快,到接收端那边多包并成一个包的现象,比如发送端连续10次发送1个字符'a',因为发送的速度很快,接收端可能一次就收到了10个字符'aaaaaaaaaa',这就是接收端的粘 ...

  7. How to let gedit of linux display "space"

    gedit--> preference --> check "draw spaces" . Then gedit  will display spaces

  8. (原创)speex与wav格式音频文件的互相转换(二)

    之前写过了如何将speex与wav格式的音频互相转换,如果没有看过的请看一下连接 http://www.cnblogs.com/dongweiq/p/4515186.html 虽然自己实现了相关的压缩 ...

  9. CentOS6.3挂载读写NTFS分区

    CentOS不像Fedora,默认是没有自动挂载NTFS的,而它可以利用NTFS-3G来实现挂载及读写. NTFS-3G 是一个开源的软件,可以实现 Linux.Free BSD.Mac OSX.Ne ...

  10. Python之路【第二十二篇】:Django之Model操作

    Django之Model操作   一.字段 AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField) - bi ...