Java軟件報表軟件技術博客

          java報表軟件技術匯總 java報表軟件制作 報表軟件新聞
          posts - 355, comments - 100, trackbacks - 0, articles - 3
             :: 首頁 :: 新隨筆 ::  :: 聚合  :: 管理

          參數控件觸發事件

          參數控件的取值與置數

          參數界面中,最常見的就是獲取參數的值進行運算或者將其作為另一個參數的判斷依據,在FineReport報表軟件網頁腳本中,也提供了獲取參數控件實際值,顯示值并給參數置數的方法。

          //取當前控件的實際值

          var [ParaValue] = this.getValue();

          //通過參數控件名稱來獲取參數控件實際值

          var [ParaValue] = this.options.form.getWidgetByName("[ParaName]").getValue();

          //通過arguments[i]獲取當前參數控件顯示值

          var [DisplayedValue] = arguments[0];

          //通過控件A獲取控件B的顯示值

          var [DisplayedValue] = this.options.form.getWidgetByName("[ParaName]").options.items[0].text;

          //獲取某個參數控件,并給其置數(實際值)

          var [Para] = this.options.form.getWidgetByName("[ParaName]");

          [Para].setValue([Value]);

          實例:

          該實例通過添加參數控件的編輯后事件來實現用一個參數控制另一個參數,如用參數username來對state置數,username為下拉框自定義的幾個用戶名,state為單選按鈕組表示狀態12。當username有值時,state的狀態置為1否則置為2

          1.  模板設計

          1.1 新建報表

          1.2 定義參數

          在菜單欄中選擇報表|報表參數,打開參數定義面板,定義參數stateusername,如下圖

           

          1.3 參數設計

          打開參數設計界面,參數控件布局如下

           

           

          l  username控件類型為下拉框,數據自定義,如圖

           

           

          l  state控件類型選擇單選按鈕組,數據也為自定義,如圖

            

          1.4 添加事件

          username的事件編輯中添加編輯后事件,JS代碼如下

          var state= this.options.form.getWidgetByName("state");

          var username = this.options.form.getWidgetByName("username").getValue();

          if (!username){

              state.setValue(2);

          }else{

              state.setValue(1);

          }

          該段代碼是用來對state參數置數,當username為空時,!username為真,此時將state置數為2,否則當username有值時,將state置數為1,如圖所示

           

           

          2.  保存并預覽

          點擊設計器分頁預覽,當username有值時,state置為1

           

          注意:state無法通過username置數為0JS里面,state0,默認返回false

          且一個控件無法對另一個控件的顯示值進行置數

          文章轉自:http://reportblog.cn/archives/927




          評論

          # re: FineReport報表工具內置JS的使用之三  回復  更多評論   

          2010-09-03 13:40 by xiaohonghong27
          不錯,不錯!

          # re: FineReport報表工具內置JS的使用之三  回復  更多評論   

          2010-09-03 18:33 by 郭嘉
          支持

          # re: FineReport報表工具內置JS的使用之三  回復  更多評論   

          2010-09-03 21:39 by 小喬
          支持
          主站蜘蛛池模板: 宝丰县| 曲麻莱县| 富阳市| 昆明市| 洛阳市| 渭南市| 宝应县| 墨玉县| 高青县| 汝城县| 老河口市| 隆德县| 历史| 搜索| 广平县| 谢通门县| 高陵县| 兴仁县| 驻马店市| 钟祥市| 呼伦贝尔市| 大竹县| 桃源县| 沧源| 盐亭县| 太仆寺旗| 门头沟区| 镇原县| 拜泉县| 临泽县| 上高县| 耿马| 沛县| 宁德市| 汉寿县| 洛扎县| 措勤县| 维西| 通道| 玛沁县| 昂仁县|