JS实现自定义折叠树节点展开层数

编辑
文档创建者:我从山中来 (73598 )     浏览次数:3949次     编辑次数:3次     最近更新:jiangsr 于 2017-11-13     

目录:

1. 问题描述编辑

在日常报表制作过程中,组织树形式是非常便捷常用的展示形式。但在使用过程中,因为数据量,以及组织树层级不确定时候。我们希望能够初始化时候根据需求展开一定层级的树节点。

2. 方法示例编辑

2.1 报表设计

构建一个控件树节点,具体建立方法可参考组织树报表示例

打开模板:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\GroupReport\组织树报表.cpt

此处是一个三层的树结构,如下图:


给B1,B2,B3单元格设置按钮控件,右击这三个单元格,右侧弹出控件设置面板,按钮类型选择树节点按钮,如下图所示:

2.2 设置加载结束事件

点击菜单模板>模板Web属性>数据分析设置,添加加载结束事件,如下图所示:

js代码如下:

$("#content-container").find("tr").has(".x-treenode-unexpand").each(function(){ if($(this).children().eq(0).text()==1){ //eq(0)表示最左边的单元格;text()==1,表示内容为1的单元格 $(this).find(".x-treenode-unexpand").trigger('click');}})
2.3 添加定位符

在需要展开的组织树节点前,增加 一个数字1作为定位符。并设置定位符的父格,随着部门进行扩展。

注:定位符可以任意设置,但需与js中text()处保持一致。

如图所示:


最后,将A列隐藏即可。

2.4 效果预览
至此,我们的设置已经完成,点击保存后,选择数据分析预览。效果为默认模板打开时候,只展开第一层树节点,效果如下:

222

如果想要展开两级节点,在第二级部门ID(即B2单元格)前面增加定位符即可。

附件列表


主题: 二次开发
如果您认为本文档还有待完善,请编辑

文档内容仅供参考,如果你需要获取更多帮助,请咨询帆软技术支持
关于技术问题,您还可以通过帆软论坛获取帮助,论坛上有非常多的大神,有些水平比帆软工程师还要高哦。
若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201

此页面有帮助吗?