easyui之combotree

这几天时间比较空闲的我把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了

 

posted @ 2015-10-22 15:42  朝华卿“  阅读(1119)  评论(0编辑  收藏  举报