根據條件控制參數控件是否顯示(可用)

一、應用場景

在用報表工具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("請選擇地區");  

相關文章
相關標籤/搜索