1. 概述
1.1 問題描述
在根據元件值自動匹配資料文檔中介紹了2種聯動方式,但是都需要在儲存格失焦後才能觸發聯動,且一旦手動修改了聯動公式所在儲存格的資料,後續就無法再聯動了。
那麼如果有以上兩種需求的場景,該如何實現呢?
1.2 解決方案
利用元件的編輯後事件觸發聯動,在事件中根據當前值獲取所需資料,賦給其他儲存格。API說明可以參考: API匯總
注:不支援行動端。
2. 範例
2.1 設計範本
建立普通報表,設計填報表格,A3 儲存格新增下拉框元件,B3~F3 新增正文框元件,如下圖所示:
2.2 下拉框設定資料字典
選中 A3 儲存格,給下拉框元件綁定資料字典,如下圖所示:
2.3 新增資料集
建立資料集ds1,從FRDemoTW取數,sql語句為:SELECT * FROM 產品
2.4 設定編輯後事件
選中A3儲存格,給下拉框元件新增一個編輯後事件。
JavaScript 程式碼如下:
注:使用 FR.remoteEvaluate API存在一定安全風險,使用者可根據實際情況使用,詳情可查看:全局API-FR
2.5 效果預覽
儲存報表,填報預覽效果如下圖所示:
3. 範本下載
已完成模板可參見:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\JS\填報預覽JS實體\JS實現根據元件值自動匹配資料.cpt
點選下載範本:JS實現根據元件值自動匹配資料.cpt