关于combotree的⽤法总结
  后台:
    实体树
    public class TreeNode{
      private String id;
      private String text;
      private String level;
      private List<LogTypeTreeNode> children = new ArrayList<>();
      public LogTypeTreeNode(String id, String text, String level){
    this.id = id;
    = text;
    this.level = level;
      }
      //get()、set()
    }
    形成展⽰成的树的结构,需⽤到递归
    public List<TreeNode> getTree() {
    List<Map<String, Object>> list = EventType();
        //获取所有数据需包含(PARENT_ID ⽗id(PARENT_ID=-1说明是根节点),TYPE_ID 节点id,TYPE_NAME节点名
称,TREE_LEVEL 树层级数)
    List<TreeNode> allNode = new ArrayList<TreeNode>();// 存放所有节点的集合
    for (Map<String, Object> map : list) {
    if (String(map, "PARENT_ID").equals("-1")) {el表达式获取map的值
    TreeNode tn = new String(map, "TYPE_ID"),
                String(map, "TYPE_NAME"), String(map, "TREE_LEVEL"));                    allNode.add(tn);
    }
    }
    for (LogTypeTreeNode root : allNode) {
      bulidTreeNode(root, list);
    }
    return allNode;
  }
    private TreeNode bulidTreeNode(TreeNode tn, List<Map<String, Object>> list) {
    for (Map<String, Object> map : list) {
    if (String(map, "PARENT_ID").Id())) {
    TreeNode tnChild = new String(map, "TYPE_ID"),
    String(map, "EVENT_TYPE_NAME"), String(map, "TREE_LEVEL"));
    tn.addChildNode(tnChild);
    bulidTreeNode(tnChild, list);
    }
    }
    return tn;
  }
    前台:
    <input type="checkbox" class="easyui-combotree"
data-options="multiple:true"     id="id"  />
    ⽤ajax获取即可展⽰:
    $.ajax({
  url : "/.../getTree",
  dataType : "JSON",
  success : function(data) {
  $('#id')botree('loadData', data);        //当数据展⽰为undefind时,可⽤ $('#id')botree('loadData',
eval(data));
  }
  });
    获取选中的树:1.只能获取节点id:var logType = $("#id")botree("getValues");
           2.获取到树节点:var t = $('#operationType')botree('tree'); // 得到树对象
              var node = t.tree('getChecked', [ 'checked', 'indeterminate' ]); // 得到选择的节点
                  循环node.length,node[i].level:树层级数,node[i].id:节点id,node[i].text:节点名称
    编辑时回显选中树节点:
      后台:把id值拼成以逗号隔开的字符串,在前台以el表达式接收到<input  type="hidden" id="allType" value="${allType}" />      前台:在以上加载完树之后
          $.ajax({
        url : "/.../getTree",
        dataType : "JSON",
        success : function(data) {
         $('#id')botree('loadData', data);        //当数据展⽰为undefind时,可⽤
$('#id')botree('loadData', eval(data));
              //编辑时显⽰打上对勾
      var at = $("#allType").val().split(",");
      $('#id')botree('setValues', at);
        }
        });
     设置树的下拉⾯板的宽度:
      $("#id")botree({
         panelWidth:200,
         panelHeight:200
      )};
    (还有另外加载的树的⽅法总结,请持续关注)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。