填報表中也可以新增 html 事件
在實際的專案開發中,填報表的應用十分廣泛。
多數情況下,填報表會作為整個專案的一部分配合需求靈活使用,但有時也會受大專案環境的影響,產生一些特別的要求。比如,通常報表單元格的資料型別大多是文字,有時卻需要藉助 HTML 或者 JavaScript 實現一些互動效果,例如在報表中新增一些說明性的提示、自定義功能性按鈕等。顯然,單純的文字資料型別不支援這種互動操作,那麼我們就會想填報表是不是能夠支援 HTML 資料型別的用法呢?如果支援又該怎麼使用呢?
答案肯定是支援的(你懂得),下面我們就舉個例子:
例項一要求:
報表中增加說明提示框,供填報表格參考。
下面以報表工具自帶報表 2.2.sht 為例,看一下如何應用 HTML。
例項報表如下:
要求效果:報表右上角定義按鈕,點選按鈕後彈出說明資訊。
具體實現:
1. 在當前報表的基礎上新增行,如下:
2. 填報表展現頁面(此例項為:previewInput.jsp)中,定義 String sgid=""; 且將 String sgid = InputTag.getInputId(); 修改為 sgid = InputTag.getInputId();,如下:
最後在 jsp 末尾的標籤內新增 js 方法程式碼如下:![]
其中:
abc() 方法 指定具體的彈出資訊及方式;
cell 變數 獲取觸發 abc()方法的單元格,並透過 $(cell).html() 定義具體的 html 事件。
效果:(動圖)
例項二要求:
在行式填報表單元格中自定義按鈕,點選後可以插入行。
這裡之所以不直接應用自帶的工具條按鈕,是因為報表應用與專案整合後會遮蔽應用自帶的工具條。
這裡還是以報表工具自帶報表 2.2.sht 為例,演示一下怎麼在報表中呼叫報表工具內建的方法。
具體實現:
1. 明確報表中需要自定義的按鈕所要執行的操作;
這裡以自定義插入行為例。
2. 找出對應的方法;
插入行:_insertRow()刪除行: _deleteRow() 追加行: _appendRow()
匯出 excel: _inputDownloadExcel()匯入 excel: _inputLoadExcelData()
因版本差異具體參考 inputtoolbar.jsp
3. 參照例項一修改 $(cell).html() 中具體觸發的方法,如下:
效果:(動圖)
溫馨提示:
1. Jsp 中 39 行的部分必須重定義變數 String sgid=""; 且將 String sgid = InputTag.getInputId(); 修改為 sgid = InputTag.getInputId(); 否則報表展現會出現類似如下報錯:
2. $(cell).html() 中涉及多組單引號和雙引號時,注意使用轉移符 \ 以保證 js 正確解析。
課外知識擴充:
文字型別是單元格預設的資料型別,我們在報表單元格里使用最多的就是這種型別。如果單元格的型別為“文字”,系統就把單元格中的字元、數字或表示式的計算結果都當成文字來處理。
HTML**** 型別是超文字標記語言,一個 HTML 檔案不僅包含文字內容,還包含一些標記。 如果報表中需要用到一些標記,但單元格不支援這種標記,這時就可以把單元格的型別設定為“html”型別,在單元格中嵌入 html 標記,透過 html 型別可以在單元格中顯示單元格本身不支援的標記資訊。html 型別還有一個用途是可以在單元格中嵌入隱藏的 javascript 函式,如果報表中多處都用到同一個 js 函式,我們可以把一個隱藏單元格設定為 html 型別,在此單元格中定義 js 函式,供其他單元格引用,這樣就可以給使用者的報表設計帶來很大方便。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69957599/viewspace-2669222/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 填報表中如何新增 html 程式碼HTML
- 皕傑報表之填報操作
- 填報表之資料留痕
- 填報表如何生成 UUID 標識UI
- HTML5中新新增的表單屬性有哪些?HTML
- 報表中怎麼新增動態文字水印
- 怎樣實現填報表定時提交
- 填報表實現隔行異色的效果
- 報表也可以根據單元格計算後結果進行排序排序
- 資料填報、報表展示哪家強?億信ABI給你答案
- 有什麼工具可以上載複雜的 excel 資料填報到資料庫中Excel資料庫
- dart系列之:HTML的專屬領域,除了javascript之外,dart也可以DartHTMLJavaScript
- 在報表中可以如何使用 ECharts 做圖形展現?Echarts
- 事件 滑鼠事件 表單事件 from表單事件
- HTML5中的表單HTML
- 在 SQL Server 中,建立表時可以直接為欄位新增唯一約束(UNIQUE)SQLServer
- 2024志願填報
- 你也在為年終總結報告頭疼嗎?Smartbi自助儀表盤可以幫到你!
- Excel都搞不定的多人填報,它能!還支援線上填報!Excel
- 如何對報表資料新增目錄
- 怎樣在報表中新增文字水印
- [Themaleaf]springboot新增Themaleaf,在html中獲取上限文Spring BootHTML
- HTML5新增特性HTML
- HTML————15、HTML 表單HTML
- print預設在末尾新增一個換行符,但其實也可以不用!
- 也許可以不用 If… Else
- java也可以做黑客?Java黑客
- 填報表怎麼跟蹤使用者操作,記錄日誌?
- 填報 - 分片問題分析
- Nuxt.js 應用中的 render:html 事件鉤子UXJSHTML事件
- React Native填坑之旅 -- 從Native發事件給JSReact Native事件JS
- 【HTML5】Web Storage 事件HTMLWeb事件
- 013---HTML5新增元素HTML
- HTML5新增的APIHTMLAPI
- HTML5 新增標籤HTML
- 填報指令碼之輕鬆搞定複雜表的資料入庫指令碼
- 填報表能不能像 word 那樣定時自動儲存?
- 普通填報表單元格實現資料二次篩選