這期內容當中小編將會給大家帶來有關使用PageOffice實現數據區域點擊的示例分析,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
需求背景: Word文檔指定位置填充的時候有一些特殊的需求需要word文檔指定的位置只能填入某一類型的數據或者某幾個數據.例如:有用戶的需求是在word文件的某一區域插入一個日期,但是這里必須用到日期控件.為了實現這樣一些特殊的需求,PageOffice開發出來了數據區域點擊事件,點擊時響應彈出一個模態或者非模態對話框,在這個對話框中用戶可以嵌入html頁面,獲取html頁面控件的數據來返回到文檔指定的位置.
用戶點擊數據區域觸發該事件,用一個回調函數響應該事件彈出一個模態對話框,讓用戶在對話框中編輯數據,從而實現禁止用戶直接編輯數據區域內容的效果。
Java代碼:
PageOfficeCtrl poCtrl = new PageOfficeCtrl(request);
WordDocument doc = new WordDocument();
DataRegion dataReg = doc.openDataRegion("PO_deptName");
//核心代碼, 用戶點擊Word文檔中的預定義的數據區域(DataRegion)時觸發此事件。
//如果您需要響應此事件,您需要在當前 JSP 頁面里定義一個 JavaScript 函數。
poCtrl.setJsFunction_OnWordDataRegionClick("OnWordDataRegionClick()");
……
poCtrl.setWriter(doc);
poCtrl.webOpen("doc/test.doc", OpenModeType.docSubmitForm, "張三");ASP.NET代碼:
WordDocument doc = new WordDocument();
DataRegion dataReg = doc.OpenDataRegion("PO_deptName");
//核心代碼, 用戶點擊Word文檔中的預定義的數據區域(DataRegion)時觸發此事件。
//如果您需要響應此事件,您需要在當前 html 頁面里定義一個 JavaScript 函數。
PageOfficeCtrl1.JsFunction_OnWordDataRegionClick = "OnWordDataRegionClick()";
……
PageOfficeCtrl1.SetWriter(doc);
PageOfficeCtrl1.WebOpen("doc/test.doc", PageOffice.OpenModeType.docSubmitForm, "張三");function OnWordDataRegionClick(Name, Value, Left, Bottom) {
if (Name == "PO_deptName") {
// selectDept.htm為要彈出的顯示部門列表的頁面URL,
// ShowHtmlModalDialog 顯示一個HTML內容的模態對話框.
var strRe = document.getElementById("PageOfficeCtrl1").ShowHtmlModalDialog("selectDept.htm",
Value, "left=" + Left + "px;top=" + Bottom
+ "px;width=400px;height=300px;frame=no;");
if (strRet != "") {
return (strRet);
}
else {
if ((Value == undefined) || (Value == ""))
return " ";
else
return Value;
}
}
}
上述就是小編為大家分享的使用PageOffice實現數據區域點擊的示例分析了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。