JS隐藏决策报表内报表块/图表块

1. 版本说明

 

  设计器版本
  10.0

2. 描述

决策报表组件支持隐藏功能。除了通过界面设置是否可见,还可以通过js设置。

 

3. 思路

 

通过js实现组件的隐藏和显示:

this.options.form.getWidgetByName('report0').setVisible(boolean); //显示或隐藏报表块

4. 操作步骤

4.1 制作模板

打开模板%FR_HOME%\webapps\webroot\WEB-INF\reportlets\demo\analytics\financial\2016年上半年收入分析.frm

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

4.2 添加按钮点击事件

1)隐藏

选中隐藏按钮,添加点击事件,点击即可隐藏report0组件:


js代码如下:

<span style="color:#334356"><span style="color:#1bc1a1"><img data-cke-saved-src="http://help.finereport.com/js/clipboard/clippy.png" src="http://help.finereport.com/js/clipboard/clippy.png" alt="Copy to clipboard" class="clippy" /><code><span style="color:teal">this</span>.options.form.getWidgetByName(<span style="color:#dd1144">'report0'</span>).setVisible(false);  <span style="color:#999988"><em>//隐藏报表块</em></span></code></span></span>

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

2)显示

选中显示按钮,添加点击事件,点击即可显示report0组件:


js代码如下:

<span style="color:#334356"><span style="color:#1bc1a1"><img data-cke-saved-src="http://help.finereport.com/js/clipboard/clippy.png" src="http://help.finereport.com/js/clipboard/clippy.png" alt="Copy to clipboard" class="clippy" /><code><span style="color:teal">this</span>.options.form.getWidgetByName(<span style="color:#dd1144">'report0'</span>).setVisible(true); <span style="color:#999988"><em>//显示报表块</em></span></code></span></span>

注:上述点击事件的写法,只适用于按钮控件在body内,当按钮控件在参数面板内时,需要使用另外一种写法

 

<span style="color:#334356"><span style="color:#1bc1a1"><img data-cke-saved-src="http://help.finereport.com/js/clipboard/clippy.png" src="http://help.finereport.com/js/clipboard/clippy.png" alt="Copy to clipboard" class="clippy" /><code>_g().getWidgetByName(<span style="color:#dd1144">'report0'</span>).visible(); <span style="color:#999988"><em>//显示</em></span>
_g().getWidgetByName(<span style="color:#dd1144">'report0'</span>).invisible(); <span style="color:#999988"><em>//隐藏</em></span></code></span></span>

4.3 保存与预览

点击隐藏按钮,report0报表块即被隐藏,再点击显示按钮,report0报表块即再次显示出来。

 

 

5. 注意事项

 

1)该功能只支持报表块、图表块的隐藏

2)该功能支持pc端,h5和app下9.0里支持

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

4)自适应布局下,组件隐藏效果如上,绝对布局下,组件隐藏效果如下:

 

6. 预览效果

 

 

6.1 PC端预览效果

 

 

6.2 移动端预览效果

 

1)APP预览效果

2)H5预览效果

 

7. 已完成模板

 

模板效果在线查看请点击:JS隐藏决策报表内报表块或图表块.frm

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

右击存储模板

猜你喜欢

转载自blog.csdn.net/hzp666/article/details/90019730