根据条件控制参数控件是否显示(可用)

一、应用场景

在用报表工具FineReport设计报表时,使用参数控件时,有时咱们但愿部分参数控件在没知足条件时不显示,知足条件后再显示,以下图效果:只有前面的下拉框选择了内容以后,后一层下拉框控件才显示出来:工具


二、解决方案

首先将被控制的控件初始化为不可见或者不可用,而后在条件控件上增长编辑结束事件,经过js脚本设置被控制控件可见或可用,对应的js方法以下:this

setEnable(boolean):设置是否可用,true为可用,false为不可用;spa

setVisible(boolean):设置是否可见,true为可见,false为不可见;设计

三、示例

打开模板%FR_HOME%\WebReport\WEB-INF\reportlets\doc\parameter\\MultiValue\MutiValue.cptorm

咱们用这个模板中的area做为条件控件,province做为被控控件来讲明设置过程。事件

3.1初始化被控控件为不可见

点击province控件,选择属性表>基本属性将可见勾选掉,以下图:get


3.2条件控件的事件设置

给area控件添加编辑后事件,调用JS方法将province控件设定为可见,具体的代码以下:it

选择参数area的下拉框控件,选择属性表的事件面板,增长一个编辑后事件,以下图:io


其中代码为:form


1.     var province=this.options.form.getWidgetByName("province");                                                                                                                                                        var area=this.options.form.getWidgetByName("area");    

2.     var thislen = this.getValue(area).length;  

3.     if(thislen) province.setVisible(true);  

4.     else alert("请选择地区");  

相关文章
相关标签/搜索