在用報表工具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做爲被控控件來講明設置過程。事件
點擊province控件,選擇屬性表>基本屬性將可見勾選掉,以下圖:get
給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("請選擇地區");