「OnBeforePrint」事件示例

2021-10-13 02:00:16 字數 736 閱讀 1422

目前所講都是在主過程中處理的指令碼,這些指令碼在報表開始執行時被執行。在主過程中,可以執行任選初始化設定,初始化變數。然後想在報表的整個處理過程中都能控制,僅僅乙個主過程還遠遠不能滿足需求。出於此原因,每個報表物件都帶了幾個事件,在指令碼中可以給物件賦值事件控制代碼。例如在資料欄的事件中可以對記錄進行過濾(根據指定條件顯示或隱藏欄)。

下面是乙個帶事件的報表示例,在這個簡單的示例中包含乙個主資料欄及兩個文字物件:

報表執行時首先執行主過程,然後是構建報表的相關過程。在構建報表過程中,首先訪問「report」物件的「onstartreport」事件。在報表頁面生成前,頁面的「onbeforeprint」將被執行。對於報表模板設計的頁面,這些事件將被執行一次。在示例中,報表僅只有一頁,事件也只被訪問一次。

輸出資料欄時,遵循下列順序:

執行資料欄的「onbeforeprint」事件;

執行資料欄中所有物件的「onbeforeprint」事件;

所有物件填充資料(在示例中,填充「company」和「addr1」欄位的值);然後是執行所有物件的「onafterdata」事件;

執行欄內物件的的相關動作如計算位置,計算高度,計算是否需要伸展的;

欄「onaftercalcheight」事件被執行;

經計算沒有足夠的空間來容納欄,將生成新的一頁;

欄和欄內所有物件在報表上顯示&

事件流 事件捕獲?事件冒泡?

事件流 從頁面中接收事件的順序。也就是說當乙個事件產生時,這個事件的傳播過程,就是事件流。ie中的事件流叫事件冒泡 事件冒泡 事件開始時由最具體的元素接收,然後逐級向上傳播到較為不具體的節點 文件 對於html來說,就是當乙個元素產生了乙個事件,它會把這個事件傳遞給它的父元素,父元素接收到了之後,還...

事件捕獲事件冒泡事件委派

當事件發生時,事件從dom樹頂層節點,一直傳播到目標節點,這個階段就叫做事件捕獲階段 當事件發生時,事件從目標節點,一直傳播到dom樹頂層節點,這個階段就叫做事件冒泡階段 當事件發生時,事件傳播順序為 事件捕獲階段 事件目標階段 事件冒泡階段 function stopbubble e else f...

冒泡事件 捕獲事件 阻止事件

father sonview code 建立父子盒子 view code 建立兩個盒子的樣式 直接上圖 冒泡事件 div1代表父盒子 div2代表子盒子 當子盒子被點選時會先處理自己,搞完自己就產生了冒泡 就是向上查詢直到document結束 為什麼不是html而是document?不是都在html...