java - 使用 jquery 将父/子数据转换为 HTML 树结构

标签 java javascript jquery html

我有一个 Java 列表,其中包含具有分层数据(id、名称、parentId)的对象,并且需要生成具有展开/折叠功能的 HTML 树结构(使用类似 DynaTree 的东西)。我见过的所有示例都需要生成嵌套的 <ul>表示父/子/.../n-子/层次结构等的结构。

我可以转换数据来构建这个结构。但是,我认为这种数据格式可以以其当前形式(id/name/parentId)工作。是否有可以处理此数据的 jquery API?

这是一个简化的例子..

//Category has an id, name, parentId
List<Category> categoryTree = new ArrayList<Category>();
categoryTree.add(new Category(1, 'root', null));
categoryTree.add(new Category(2, 'colors', 1));
categoryTree.add(new Category(3, 'blue', 2));
categoryTree.add(new Category(4, 'red', 2));
categoryTree.add(new Category(5, 'shapes', 1));
categoryTree.add(new Category(6, 'round', 5));

//now, I need to convert this to dynamic javascript to build the tree structure (<ul>, etc)

我以前像这样使用过 SmartGWT,将其转换为树节点结构很简单(请参阅 this example)。我认为有一个 jQuery API 可以做同样的事情......也许没有

最佳答案

这是一个可能有用的演示

http://jsfiddle.net/charlietfl/pCsZ3/

它使用不多的 jQuery 解析无限深的对象,并且只对整个树使用一个 DOM 附加

如果从列表中解析,无论如何首先创建对象会更有效,否则你会做很多额外的附加到 DOM,这不是很有效

关于java - 使用 jquery 将父/子数据转换为 HTML 树结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9694018/

相关文章:

javascript - 在 smarty 或 javascript/jQuery 中匹配特定单词后 chop 字符串

javascript - 获取javascript类中静态方法的值

jquery - 计算每个鼠标滚轮滚动并输出到变量

javascript - 用于在评论部分呈现星级值的 While 循环

java - 如何对 Spring MVC 注释 Controller 进行单元测试?

java - System.getProperty ("catalina.base") 可能存在客户端可以使用任何其他服务器的情况

java - 如何禁用 LWUIT 中的组合框?

javascript - 我的 jsp 代码中出现一些奇怪的情况,x++ 不起作用

javascript - 提交前 CFForm 验证和 onclick

javascript - IE 中的 jquery 动态下拉选择问题