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

1、应用场景

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

2、解决方案

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

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

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

3、示例

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

我们用这个模板中的area作为条件控件,province作为被控控件来说明设置过程。

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

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

3.2条件控件的事件设置

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

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

其中代码为:

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("请选择地区");

时间: 2024-10-11 13:25:15

根据条件控制参数控件是否显示(可用)的相关文章

报表参数控件和报表内容自动居中设置方法

在用报表工具FineReport设计报表时,常遇到以下问题: 1.参数控件(多行控件)的居中问题.2.报表内容的居中和自适应宽度问题,以及报表标题设置了重复标题和冻结如何不影响居中.3.图表居中和自适应宽度问题. 解决方案如下: 1.如果使用的是FineReport的7.1.1版本:将参数控件界面的控件手动来拖,当然设计宽度是可以变的 , 按照上图中的设置方法,就可以整体居中 如果是FineReport7.1 版本:点击参数界面空白处   右边属性界面有个位置选择来居中 2.居中显示不影响表头

如何对报表的参数控件赋值

应用场景 在用FineReport制作的报表中,在参数界面,往往需要在一个控件中动态的控制其他控件的值,如下图,当username有值时,state自动变为1,否则变为2:: 解决方案 可以通过js脚本获取到需要的控件,从而获得控件的值,及给控件赋值. 示例 我们利用FineReport制作一个简单的例子实现上图效果. 1.参数界面 如下图参数界面 username控件类型为下拉框,数据自定义,实际值和显示值都为:jerny,anna,merry. state控件类型选择单选按钮组,数据也为自定

利用来JS控制页面控件显示和隐藏有两种方法

利用来JS控制页面控件显示和隐藏有两种方法,两种方法分别利用HTML的style中的两个属性,两种方法的不同之处在于控件隐藏后是否还在页面上占空位. 方法一:  1 2 document.getElementById("EleId").style.visibility="hidden"; document.getElementById("EleId").style.visibility="visible"; 利用上述方法实现隐

产品经理学Python:条件控制

条件控制其实就是if...else...(如果...条件是成立的,就做...:反之,就做...)的使用,其基本结构是: 具体看下面这个例子: 1 def account_login(): 2 # 定义函数 3 password = input('请输入密码:') 4 # 输入密码 5 if password == '12345': 6 # 如果输入密码是12345,则登录成功 7 print('登录成功') 8 else: 9 print('密码有误,请重新输入') 10 # 否则提示密码有误,

python基础之条件控制与循环

Python3 条件控制 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断. 比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if语句实现: age = 20 if age >= 18: print('your age is', age) print('adult') 根据Python的缩进规则,如果if语句判断是True,就把缩进的两行print语句执行了,否则,什么

asp.net mvc后台操作之读写xml控制首页动态页面开关显示

一.背景 在asp.net mvc项目里,用户需要开拓几个活动版面,并以侧栏的方式呈现在首页右侧,几个活动时间不一致,为避免浏览者在活动未开放之时进入未开放的服务页面.因此不仅需要在活动代码中加入限制功能,也需要在前台取消不合时宜的页面的展示.后台效果图: 二.问题分析 要想控制页面开关显示,就得有存储开关信息的介质,将在后台产生的操作记录下来,并在浏览者加载首页之时能读取操作记录并达到控制页面开关的目的.因此,考虑两种介质储存开关记录信息,一是用数据库mysql,二是用xml.考虑到这对数据库

访问调度控制 时间控件

Visulalization Voronoi in OpenSceneGraph [email protected] Abstract. In mathematics a Voronoi diagram is a way of dividing space into a number of regions. A set of points, called seeds, sites, or generators is specified beforehand and for each seed t

Button 控件用于显示一个按钮。

Button 控件用于显示按钮.按钮可以是提交按钮或命令按钮,而该控件属于提交按钮. submit 按钮没有命令名称,当它被点击时,它把页面传回服务器.可以编写一些事件句柄,在提交按钮被点击时来控制动作的执行. command 按钮拥有命名名称,且允许你在页面上创建多个 Button 控件.可以编写一些事件句柄,在 command 按钮被点击时来控制动作的执行.

条件控制:IF & CASE语句

IF语句主要有以下三种基本形式: 一. IF-THEN语句 IF CONDITION THEN           STATEMENT 1;           ...           STATEMENT N;       END IF; 二. IF-THEN-ELSE语句 IF CONDITION THEN           STATEMENT 1;       ELSE            STATEMENT 2;       END IF; 三. ELSLF语句 IF CONDIT