解析jquery easyui树异步加载子节点问题

  

easyui中的树可以从标记中建立,也可以通过指定一个URL属性读取数据建立。如果想建立一棵异步树,需要为每个节点指定一个id属性值,这样在加载数据时会自动向后台传递id参数。

        & lt; ul id=" tt "祝辞& lt;/ul>      

编写前台代码:

        $ (' # tt) .tree ({   url: '/以及接下来/节点/getNodes '//url将被映射到NodeController类和getNodes方法   });      

为测试用,建立一个节点的数据模型:

        @ table (name="节点")   公共类节点扩展ActiveRecordBase {   @ id公共整数id;   @ column公共整数parentId;   @ column公共字符串名称;      公共布尔hasChildren()抛出异常{   长数=count(节点。类,“parentId=& # 63;”新对象[]{id});   返回数比;0;   }   }      之前      

编写后台的控制器代码:

        公开课NodeController延伸ApplicationController {/* *   *得到节点,如果“id”参数=0然后加载第一级节点,   *否则加载子节点   * @param id父节点id值   * @return json格式所需的树节点   * @throws例外   */公众视线getNodes (int id){抛出异常   List节点=零;      如果(id==0){//返回第一级节点   节点=Node.findAll(节点。类,“parentId=0或parentId为空”,零);   }{//返回子节点   节点=Node.findAll(节点。类,“parentId=& # 63;”新对象[]{id});   }      List比;项=new ArrayList在();   (节点的节点:节点){   Object> Map<字符串;项=new HashMap<字符串,Object> ();   项。put (" id ", node.id);   项。把(“文本”,node.name);//节点都有孩子,//将状态设置为“关闭”节点可以异步加载的孩子节点   如果(node.hasChildren ()) {   项。把(“状态”,“关闭”);   }   items.add(项);   }      返回新JsonView(项目);   }   }      

官网例子地址:http://www.jeasyui.com/tutorial/tree/tree2.php
  

  

演示下载:easyui-tree2_jb51.rar 

  

<强>重要的事情说三遍! ! !

        $ (' # tt) .tree ({   方法:“文章”,   url: '/以及接下来/节点/getNodes '//url将被映射到NodeController类和getNodes方法   });      

  

  

  

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

解析jquery easyui树异步加载子节点问题