反饋已提交
網絡繁忙
和 10.0 差別:
新增 getType、setWaterMark、setPopupStyle API
FVS大屏編輯模式插件 V1.5.0 版本新增 元件組件,適配部分API
與普通報表和決策報表的差別:需要將 _g().xxx 更換為 duchamp.xxx
在使用API前,請務必先仔細閱讀 JS API 相容說明,API預設支援普通報表和決策報表(新版)。
方法
getValue()
獲取元件的實際值。
參數
-
傳回值
any
範例
範例1:若取到的元件物件定義為 widget,獲取元件的實際值:
widget.getValue();
範例2:獲取參數面板上 text0 元件的實際值:
_g().getParameterContainer().getWidgetByName("text0").getValue();
範例3:普通報表中獲取填報儲存格中 text0 元件的實際值:
_g().getWidgetByName("text0").getValue();
範例4:決策報表中獲取 body 中 text0 元件的實際值
新自適應:_g().getWidgetByName("text0").getValue();舊自適應:_g().getParameterContainer().getWidgetByName("text0").getValue();
範例5:FVS 大屏範本中獲取元件組件 text0 的實際值
duchamp.getWidgetByName("text0").getValue();
注:FVS 插件 V1.16.0 及之後版本,標題組件 也支援 getValue() API,用法與範例 5 一致。
應用範例
獲取日期元件的值,當開始時間和結束時間相差大於 30 天時,彈窗提醒。
詳細實現方法可參考:JS實現日期元件查詢天數控制。
行動端
支援行動端。
getText()
獲取元件的顯示值。
string
範例1:若獲取到的元件物件定義為 widget,獲取元件的顯示值:
widget.getText();
範例2:獲取參數面板上 text0 元件的顯示值:
_g().getParameterContainer().getWidgetByName("text0").getText();
範例3:普通報表中獲取填報儲存格中 text0 元件的顯示值:
_g().getWidgetByName("text0").getText();
範例4:決策報表中獲取 body 中 text0 元件的顯示值:
範例5:FVS 大屏範本中獲取元件組件 text0 的顯示值:
下拉框選擇值後,列印其實際值和顯示值:
點選可下載範本:獲取元件顯示值.cpt
setValue(value)
設定元件的值。
value: any
元件值,任意格式。
void
範例1:若獲取到的元件物件定義為 widget,設定元件的值為“文本”:
widget.setValue('文本');
範例2:獲取參數面板上元件 text0 ,将其元件值設定為“文本”:
_g().getParameterContainer().getWidgetByName("text0").setValue('文本');
範例3:普通報表中獲取填報儲存格中 text0 元件,将其元件值設定為“文本”:
_g().getWidgetByName("text0").setValue('文本');
範例4:決策報表中獲取 body 中 text0 元件,将其元件值設定為“文本”:
範例5:普通報表中給參數面板上的下拉複選框賦多個值:
_g().getParameterContainer().getWidgetByName("comboCheckBox0").setValue("孙阳,孙林");
範例6:FVS 大屏範本中獲取元件組件 text0 ,將其元件值設定為“文本”:
duchamp.getWidgetByName("text0").setValue('文本');
點選按鈕,給日期元件設定合适的值:
詳細實現方法可參考:JS實現自定義按鈕快速給參數賦指定範圍值
注:FVS 企業戰情室範本不支援 visible 。
visible()
設定元件可見。
範例1:若獲取到的元件物件定義為 widget,設定其可見:
widget.visible();
範例2:獲取參數面板上元件 text0 ,設定其可見:
_g().getParameterContainer().getWidgetByName("text0").visible();
範例3:普通報表中獲取填報儲存格中 text0 元件,設定其可見:
_g().getWidgetByName("text0").visible();
範例4:決策報表中獲取 body 中 text0 元件,設定其可見:
點選按鈕,顯示參數面板中的部分元件:
點選可下載範本:設定元件值可見.cpt
注:FVS 大屏範本不支援 invisible 。
invisible()
設定元件不可見。
範例1:若獲取到的元件物件定義為 widget,設定其不可見:
widget.invisible();
範例2:獲取參數面板上元件 text0 ,設定其不可見:
_g().getParameterContainer().getWidgetByName("text0").invisible();
範例3:普通報表中獲取填報儲存格中 text0 元件,設定其不可見:
_g().getWidgetByName("text0").invisible();
範例4:決策報表中獲取 body 中 text0 元件,設定其不可見:
點選按鈕,隐藏參數面板中部分元件:
點選可下載範本:設定元件值不可見.cpt
setVisible(visibility)
設定元件可見/不可見。
visibility: boolean
是否可見,布爾型:
true:可見。
false:不可見。
widget.setVisible(false);
_g().getParameterContainer().getWidgetByName("text0").setVisible(false);
_g().getWidgetByName("text0").setVisible(false);
範例5:FVS 大屏範本中獲取元件組件 text0 ,設定其不可見:
duchamp.getWidgetByName("text0").setVisible(false);
只有前面的下拉框選擇了内容之後,後一層下拉框元件才顯示出來:
詳細實現方法可參考:JS根據條件顯示參數元件
行動端部分支援,報表填報儲存格中的元件不支援
isVisible()
元件是否可見。
boolean
範例1:若獲取到的元件物件定義為 widget,返回其是否可見:
widget.isVisible();
範例2:獲取參數面板上元件 text0 ,返回其是否可見:
_g().getParameterContainer().getWidgetByName("text0").isVisible();
範例3:普通報表中獲取填報儲存格中 text0 元件,返回其是否可見:
_g().getWidgetByName("text0").isVisible();
範例4:決策報表中獲取 body 中 text0 元件,返回其是否可見:
範例5:FVS 大屏範本中獲取元件組件 text0 ,傳回其是否可見:
duchamp.getWidgetByName("text0").isVisible();
省份元件選擇值後,查詢按鈕顯示;否則,查詢按鈕不顯示:
點選可下載範本:元件是否可見.cpt
setEnable(enabled)
設定元件可用/不可用。
enabled: boolean
是否可用,布爾型:
true:可用。
false:不可用。
範例1:若獲取到的元件物件定義為 widget,設定其不可用:
widget.setEnable(false);
範例2:獲取參數面板上元件 text0 ,設定其不可用:
_g().getParameterContainer().getWidgetByName("text0").setEnable(false);
範例3:普通報表中獲取填報儲存格中 text0 元件,設定其不可用:
_g().getWidgetByName("text0").setEnable(false);
範例4:決策報表中獲取 body 中 text0 元件,設定其不可用:
範例5:FVS 大屏範本中獲取元件組件 text0 ,設定其不可用:
duchamp.getWidgetByName("text0").setEnable(false);
成績只能選擇一次,選擇後将元件設定為不可用:
詳細實現方法可參考:JS實現填報元件只能填寫一次
isEnabled()
元件是否可用。
範例1:若獲取到的元件物件定義為 widget,傳回其是否可用:
widget.isEnabled();
範例2:獲取參數面板上元件 text0 ,傳回其是否可用:
_g().getParameterContainer().getWidgetByName("text0").isEnabled();
範例3:普通報表中獲取填報儲存格中 text0 元件,傳回其是否可用:
_g().getWidgetByName("text0").isEnabled();
範例4:決策報表中獲取 body 中 text0 元件,傳回其是否可用:
範例5:FVS 大屏範本中獲取元件組件 text0 ,傳回其是否可用:
duchamp.getWidgetByName("text0").isEnabled();
省份元件選擇值後,查詢按鈕可用;否則,查詢按鈕不可用:
點選可下載範本:元件是否可用.cpt
reset()
重置元件、清空元件的内容。
範例1:若獲取到的元件物件定義為 widget,清空元件的内容:
widget.reset();
範例2:獲取參數面板上元件 text0 ,清空元件的内容:
_g().getParameterContainer().getWidgetByName("text0").reset();
範例3:普通報表中獲取填報儲存格中 text0 元件,清空元件的内容:
_g().getWidgetByName("text0").reset();
範例4:決策報表中獲取 body 中 text0 元件,清空元件的内容:
範例5:FVS 大屏範本中獲取元件組件 text0 ,清空元件的內容:
duchamp.getWidgetByName("text0").reset();
點選按鈕,清空所有元件值:
詳細實現方法可參考:JS實現清空元件内容。
注:FVS 大屏範本不支援 getType 。
getType()
獲取元件型別。
字符串,返回預設的元件名稱型別,如按鈕為 button、下拉框為 comboBox
範例1:若獲取到的元件物件定義為 widget,傳回其型別:
widget.getType();
範例2:獲取參數面板上元件 text0 ,傳回其型別:
_g().getParameterContainer().getWidgetByName("text0").getType();
範例3:普通報表中獲取填報儲存格中 text0 元件,傳回其型別:
_g().getWidgetByName("text0").getType();
範例4:決策報表中獲取 body 中 text0 元件,傳回其型別:
點選按鈕獲取元件型別:
點選可下載範本:查看元件型別.cpt
setWaterMark(text)
新增水印文字(僅支援有輸入框的元件)
text: string
水印文字,字串。
範例1:若獲取到的元件物件定義為 widget,為其添加“請輸入姓名”的水印:
widget.setWaterMark('請輸入姓名');
範例2:獲取參數面板上元件 text0 ,為其添加“請輸入姓名”的水印:
_g().getParameterContainer().getWidgetByName("text0").setWaterMark('請輸入姓名');
範例3:普通報表中獲取填報儲存格中 text0 元件,為其添加“請輸入姓名”的水印:
_g().getWidgetByName("text0").setWaterMark('請輸入姓名');
範例4:決策報表中獲取 body 中 text0 元件,為其添加“請輸入姓名”的水印:
注:添加事件後由於報表塊物件沒有完全創建導緻報錯後,可以添加一個延遲函式延遲執行,如:
setTimeout(function(){ _g().getParameterContainer().getWidgetByName("text0"). setWaterMark('請輸入姓名') ;}, 500);
範例5:FVS 大屏範本中獲取元件組件 text0 ,為其新增“請輸入姓名”的水印:
duchamp.getWidgetByName("text0").setWaterMark('请输入姓名');
給文本框元件添加水印:
點選可下載範本:元件水印.cpt
注:FVS 大屏範本不支援 fireEvent 。
fireEvent(eventName);
調用元件事件。
eventName: string
事件型別,字串,值可參考:元件事件,如【初始化後】事件為【afterinit】。
範例1:若獲取到的元件物件定義為 widget,觸發元件的【初始化後】事件:
widget.fireEvent('afterinit');
範例2:獲取參數面板上元件 text0 ,觸發其【初始化後】事件:
_g().getParameterContainer().getWidgetByName("text0").fireEvent('afterinit');
範例3:普通報表中獲取填報儲存格中 text0 元件,觸發其【初始化後】事件:
_g().getWidgetByName("text0").fireEvent('afterinit');
範例4:決策報表中獲取 body 中 text0 元件,觸發其【初始化後】事件:
決策報表中,點選按鈕給日期元件賦值,同時觸發日期元件的【編輯後】事件提交參數查詢:
詳細實現方法可參考:查詢不同時間周期的數據。
注:FVS 大屏範本不支援 setPopupStyle 。
setPopupStyle(PopupStyle)
設定元件下拉選項框的樣式,僅支援有選項框的元件,如下拉框、下拉複選框。
PopupStyle:{
itemHeight: string;
fontSize: string;
}
PopupStyle:彈出框樣式,json 格式:
itemHeight:彈出框中選項的高度。
fontSize::彈出框中字型大小。
範例1:若獲取到的下拉框元件物件定義為 widget,設定其彈出框選項高度為 30px、字型大小為 20px:
widget.setPopupStyle({ itemHeight:"30px", fontSize:"20px" });
範例2:獲取參數面板上下拉框元件 comboBox0 ,設定其彈出框選項高度為 30px、字型大小為 20px:
範例3:普通報表中獲取填報儲存格中下拉框元件 comboBox0,設定其彈出框選項高度為 30px、字型大小為 20px:
_g().getWidgetByName("comboBox0").setPopupStyle({ itemHeight:"10px", fontSize:"10px" });
範例4:決策報表中獲取 body 中下拉框元件 comboBox0,設定其彈出框選項高度為 30px、字型大小為 20px:
_g().getWidgetByName("comboBox0").setPopupStyle({ itemHeight:"30px", fontSize:"20px" });
注:添加事件後由於報表塊物件沒有完全創建導致報錯後,可以添加一個延遲函式延遲執行,如:
setTimeout(function(){ _g().getParameterContainer().getWidgetByName("comboBox0").setPopupStyle({ itemHeight: "10px", fontSize: "10px" }); }, 500);
設定【下拉框】下拉選項框選項高度為 30px、字型大小為 20px:
點選可下載範本:元件樣式.cpt
不支援行動端。
注:FVS 大屏範本不支援 return false 。
事件中加入 return false,用於阻擋後續動作執行,如給查詢按鈕加一個事件用來阻止其查詢。
給決策報表的下拉複選框元件,添加一個【編輯後】事件,事件内容為:
return false;
给查询按钮加一个阻止查询事件,当地区选择华东时不查询,选择华北时查询:
点击可下载模板:查詢按鈕選擇性查詢.cpt
報表伺服器 11.0.11 且 APPH5 11.0.76 及以上版本,行動端支援使用該API,但不支援「阻止觸發聯動」的功能,比如阻止決策報表 body 中元件選完值後的預設查詢。
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉
反馈已提交
网络繁忙