当报表中列出数据太多时,想通过显示按钮隐藏明细数据只显示统计数据。如下图示例,那么该如何实现呢?本文以FineReport为例,来讲述JS如何实现点击参数面板按钮显示或隐藏数据。
打开报表
在参数面板添加一个标签控件,控件名为lable,设置标签控件不可见,控件值为“显示”。
在参数面板添加一个按钮控件,控件名为button,控件值为“只显示合计数据”,并添加点击事件。
编辑点击事件,添加下面的JavaScript代码:
1
|
<span style=
"font-family:'微软雅黑', 'Microsoft YaHei';font-size:14px;"
>
/*获取隐藏的标签控件的值*/
<br>
var
label=
this
.options.form.getWidgetByName(
"label"
).getValue();<br><br>
/*判断标签控件的值*/
<br>
if
(label==
'显示'
)<br>{<br>
/*当标签控件的值为显示时,则改为隐藏,并修改按钮名称为显示所有数据*/
<br>
this
.options.form.getWidgetByName(
"label"
).setValue(
"隐藏"
);<br>
this
.options.form.getWidgetByName(
"button"
).setValue(
"显示所有数据"
);<br>}<br>
else
<br>{<br>
/*当标签控件的值不为显示时,则改为显示,并修改按钮名称为只显示合计数据*/
<br>
this
.options.form.getWidgetByName(
"label"
).setValue(
"显示"
); <br>
this
.options.form.getWidgetByName(
"button"
).setValue(
"只显示合计数据"
);<br>}<br><br>
/*执行查询*/
<br>_g().parameterCommit();<br></span>
|
点击参数面板空白处,将“点击查询前不显示报表内容”属性的勾去掉。
回到报表设计界面,右键B3单元格,添加条件属性,设置行高为0毫米,添加公式条件为$label = '隐藏'。
保存模板,点击分页预览即可看到上图的效果。
本文转自 雄霸天下啦 51CTO博客,原文链接:http://blog.51cto.com/10549520/1904251,如需转载请自行联系原作者