最新历史版本 :JS实现隐藏决策报表组件 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 问题描述

不勾选决策报表组件「属性」下的「可见」时,可在前端展示时隐藏决策报表组件,但是无法自由切换隐藏或显示。

Snag_1bb3b674.png

那么如何才能在前端预览时自由切换组件隐藏或显示呢?预期效果如下图所示:

BE63DA7E-C912-4C38-90D0-240C9450717F.GIF

1.2 实现思路

决策报表中添加 2 个按钮,分别添加点击事件,实现隐藏和显示组件功能。

2. 示例编辑

2.1 准备模板

点击下载模板 门店分析.frm 并在设计器中打开。

2.2 添加按钮

拖入两个按钮控件,将按钮名称分别修改为「隐藏」、「显示」,如下图所示:

Snag_1bb69e3a.png

2.3 添加隐藏事件

选中「隐藏」按钮,添加「点击」事件,点击即可隐藏 report0 组件,JavaScript 代码如下:

_g().getWidgetByName('report0').setVisible(false);  //隐藏报表块

如下图所示:

注:report0 是报表块名,如果是需要隐藏图表块,换成图表块名称即可。

2.4 添加显示事件

选中「显示」按钮,添加「点击」事件,点击即可显示 report0 组件,JavaScript 代码如下:

_g().getWidgetByName('report0').setVisible(true); //显示报表块

如下图所示:

注:若按钮控件在参数面板中,事件写法与上述写法一致,无需改动。

2.5 效果预览

2.5.1 PC 端

保存模板,点击「PC端预览」,效果如 1.1 节预期效果所示。

2.5.2 移动端

同时支持 App 端和 H5 端预览,效果如下图所示:

912187A4-D884-4474-AE39-9157AC0F2699.GIF

3. 模板下载编辑

已完成模板可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\JS\表单JS实例\JS隐藏决策报表内报表块或图表块.frm

点击下载模板:JS隐藏决策报表内报表块或图表块.frm

4. 注意事项编辑

1)只支持隐藏报表块、图表块。

2)组件不可见时,导出时必须增加 sessionID,不然连同隐藏组件会一起导出。

3)自适应布局下,组件隐藏后触发自适应效果,被隐藏组件的位置会被旁边的组件占用。如果是绝对布局,被隐藏组件的位置会空出来,如下图所示: