这几天时间比较空闲的我把easyui中比较难的控件回顾一遍
这次的总结是easyui中的combotree
easyui的中文文档上说:combotree结合选择控制和下拉树,类似于combobox只是替换了列表为tree控件,combotree 支持树复选框,可以方便的实现多选
也就是下拉框组合下拉树,获值的方法和下拉框的获值一样都是
valueField: 'XX',
textField: 'XXX',
只不过tree有些麻烦,具体引用文档中写的不全,我以我自己的想法写一下,基本上格式如下
id: 1, text: 'Languages', children: [{ id: 11, text: 'Java' },{ id: 12, 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了