反馈已提交

网络繁忙

当前为10.0版本文档,只有最新版本的文档支持在线编辑修改,如果想创建/编辑文档,请移步至 最新版帮助文档

JS实现一键展开或收起折叠树所有节点

  • 文档创建者:yi丶搁浅
  • 历史版本:19
  • 最近更新:Carly 于 2023-03-27
  • 1. 概述

    1.1 问题描述

    我们制作的复杂折叠树报表,在以数据分析模式预览时,需要点击父节点,才会展开下一层子节点,当层数比较多的时候,操作比较麻烦。如果用户想实现一键全部展开或收起,如何实现呢?

    折叠树:

    222

    1.2 实现思路

    可以添加 2 个按钮,再通过给按钮添加点击事件来实现对应的功能。

    2. 示例

    2.1 添加按钮

    打开 %FR_HOME%\webapps\webroot\WEB-INF\reportlets\demo\basic\复杂折叠树.cpt 报表,并添加 2 个按钮。如图所示:

    image.png

    2.2 添加事件

    1)给「展开」按钮控件添加「点击」事件。如下图所示:

    image.png

    JavaScript 代码如下:

    //展开的最大节点级值
    var t = 3; 
    for(var m = 1; m <= t; m++) {
    //循环执行“+”号展开
        $('.x-treenode-unexpand').trigger('click');
    }
    for(var n = 1; n <= 2; n++) {
    //执行点击2次(下标从0开始)第1个样式为“fr-widget-click”的元素,定位光标
        $('.fr-widget-click').eq(0).trigger('click');
    }

    2)给「收起」按钮控件添加「点击」事件。如下图所示:

    image.png

    JavaScript 代码如下:

    var t = 3;
    for(var m = 1; m <= t; m++) {
    //循环执行“-”号收起
        $('.x-treenode-expand').trigger('click');
    }
    for(var n = 1; n<= 2; n++){
    //执行点击2次(下标从0开始)第1个样式为“fr-widget-click”的元素,定位光标
    $('.fr-widget-click').eq(0).trigger('click');
    }

    2.3 效果预览

    保存模板,点击「数据分析」,效果如下图所示:

    注1:仅支持「数据分析」预览。

    注2:收起按钮,仅改变最外层树的状态为收起,内层树状态不变。

    20180810173528_3359.gif

    3. 模板下载

    附件列表


    主题: 报表应用
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    请前往「服务平台」,选择「在线支持」

    热线电话:400-811-8890转2

    总裁办24H投诉

    热线电话:173-1278-1526