1. 概述
1.1 應用場景
填報項較多時,點選按鈕即可清除所有填報內容,快速進行重新填報,效果如下圖所示:
1.2 實現思路
按鈕新增點選事件,利用儲存格的_g().setCellValue( )API指派為空來清空指定儲存格的填報內容。API說明可以參考:獲取和設定儲存格值API
2. 範例
2.1 設計表格
A1~A4 填入正文資訊,合併 A5~C5 儲存格,元件設定如下:
B1:新增文字元件
B2:新增下拉框元件,資料字典自訂為男和女
B3:新增正文元件
B4:新增日期元件
A5:新增按鈕元件
2.2 新增事件
1)選中 A5 儲存格,右側元件設定>屬性下,按鈕類型下拉選擇普通,按鈕名稱設定為一鍵清除填報內容,如下圖所示:
2)選中 A5 儲存格,給按鈕新增一個點選事件,如下圖所示:
JavaScript 程式碼如下:
var arr = ["B1", "B2", "B3", "B4"];
//將需要清空的元件所在儲存格的編號塞入陣列
for (i = 0; i < arr.length; i++) {
var cr = FR.cellStr2ColumnRow(arr[i]);
//根據儲存格編號獲取列欄號
_g().setCellValue(0, cr.col, cr.row, "");
//遍歷清空儲存格內容
}
2.3 效果預覽
儲存報表,點選填報預覽,效果如下圖所示:
注:該方法不支援清空按鈕元件、複選按鈕元件、無線電鈕組元件、複選按鈕組元件、列儲存格件、網頁框、下拉樹、檢視表樹的內容。
3. 範本下載
點選下載範本:JS實現一鍵清除填報內容.cpt
4. 擴展儲存格清空內容
上面範例針對的是非擴展儲存格,如果填報時儲存格是擴展的,那麼需要改下程式碼寫法。
以一張簡單填報表為例,其中 C2 儲存格設定了文字元件,需要在前端填報,且該儲存格跟隨 A2 和 B2 儲存格擴展,如下圖所示:
A3 儲存格為一鍵清空按鈕,其元件點選事件如下圖所示:
事件要設定參數 len,其值為公式 count(A2),JavaScript 程式碼如下:
最終效果如下圖所示:
範例範本下載:擴展儲存格一鍵清空.cpt