反饋已提交

網絡繁忙

JS實現點選參數面板按鈕顯示或隱藏資料

1. 概述

1.1 版本

報表伺服器版本
功能變更
11.0--

1.2 問題描述

當報表中列表資料太多時,想透過顯示按鈕隱藏明細資料只顯示統計資料。如下圖範例,該如何實現?

1.3 實現思路

透過 JavaScript 修改參數元件的值,儲存格中新增條件屬性,根據參數值顯示或隱藏相應的行。

2. 範例

2.1 準備範本

準備內建範本: %FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Primary\GroupReport\Group_2.cpt

點選可下載範本:  Group_2.cpt

範本樣式如下圖所示:

2.2 新增元件

1)在參數面板新增一個「標籤元件」,元件名為 label,設定標籤元件不可見,預設元件值為 「顯示」。如下圖所示:

2)在參數面板新增一個「按鈕元件」,元件名為 button,元件值為「只顯示合計資料 」。如下圖所示:

2.3 新增事件

選擇 button 元件,為其新增一個「點選」事件,事件內容為點選按鈕時改變標籤元件的值並修改按鈕名稱,如下圖所示:

JavaScript 程式碼如下:

/*獲取隱藏的標籤元件的值*/
var label= this.options.form.getWidgetByName("label").getValue();
/*判斷標籤元件的值*/
if(label=='顯示')
{
/*當標籤元件的值為顯示時,則改為隱藏,並修改按鈕名稱為顯示所有資料*/
this.options.form.getWidgetByName("label").setValue("隱藏");
this.options.form.getWidgetByName("button").setValue("顯示所有資料");
}
else
{
/*當標籤元件的值不為顯示時,則改為顯示,並修改按鈕名稱為只顯示合計資料*/
this.options.form.getWidgetByName("label").setValue("顯示");        
this.options.form.getWidgetByName("button").setValue("只顯示合計資料");
}
/*執行查詢*/
_g().parameterCommit();

2.4 新增條件屬性

回到報表設計介面,右鍵 B3 儲存格,為其新增「條件屬性」,設定行高為 0 公釐,新增公式條件為 $label = '隱藏' ,即在 label 標籤值為隱藏時,隱藏 B3 儲存格 ,否則,顯示 B3 儲存格 。如下圖所示:

2.5 效果預覽

點選參數面板空白處,取消勾選「點選查詢前不顯示報表內容」,報表初始化時不用點選「查詢」也顯示內容。

儲存範本,點選「分頁預覽」,PC 端效果如下所示:

注:不支援行動端。

3. 範本下載

已完成的範本,可參見:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doctw\JS\參數介面JS實體\10-JS實現點選參數面板按鈕顯示或隱藏資料.cpt

點選下載範本:10-JS實現點選參數面板按鈕顯示或隱藏資料.cpt

附件列表


主題: 參數應用
已經是第一篇
已經是最後一篇
  • 有幫助
  • 沒幫助
  • 只是瀏覽
  • 圖片不清晰
  • 用語看不懂
  • 功能說明看不懂
  • 操作說明太簡單
  • 內容有錯誤
中文(繁體)

滑鼠選中內容,快速回饋問題

滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

不再提示

10s後關閉

獲取幫助
線上支援
獲取專業技術支援,快速幫助您解決問題
工作日9:00-12:00,13:30-17:30在线
頁面反饋
針對當前網頁的建議、問題反饋
售前咨詢
業務咨詢
電話:0933-790886或 0989-092892
郵箱:taiwan@fanruan.com
頁面反饋
*問題分類
不能為空
問題描述
0/1000
不能為空

反馈已提交

网络繁忙