1. 概述
1.1 問題描述
設計範本時,有時可能需要將報表中的參數或某些值傳遞到自己的網頁中做一些處理,那麼該如何實現呢?
1.2 實現思路
設定超級連結到網頁並設定參數,然後在網頁中透過request.getParameter("超級連結中的參數名")獲取參數即可。
2. 範例
2.1 設計範本
1)建立普通報表,建立資料集 ds1 ,SQL 查詢語句為:SELECT * FROM 運貨商
2)如下圖設計表格,將資料集中欄位拖到對應儲存格中。
2.2 新增超連結
範例將連結到一個 jsp 頁面,如下圖設定網頁連結並新增參數。
2.3 網頁獲取參數設定
在 update1.jsp 檔案的開頭加上獲取參數的程式碼:
<%
String ID = request.getParameter("ID");
String TELEPHONE =request.getParameter("TELEPHONE");
%>
最終完整的 update1.jsp 檔案程式碼如下:
<%@ page language="java" pageEncoding="GBK"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<%
String ID = request.getParameter("ID");
String TELEPHONE =request.getParameter("TELEPHONE");
%>
<html>
<head>
<title>修改基本參數</title>
</head>
<body>
<table width="350" border="0" cellspacing="1" cellpadding="5px">
<tr>
<th width="130">運貨商編碼:</th><td width="208"><input type="text" id="ID" value="<%=ID %>" disabled/></td>
</tr>
<tr>
<th>電話:</th><td><input type="text" id="TELEPHONE" value="<%=TELEPHONE %>"/></td>
</tr>
</table>
</body>
</html>
2.4 效果預覽
儲存報表,分頁預覽超連結傳參效果如 1.1問題描述 中所示。
支援 App 端和 HTML5 端預覽。
3. 範本下載
點選下載範本:超連結傳遞網頁參數.cpt
點選下載 jsp 檔案:update1.jsp
4. 注意事項
超連結傳參到網頁時,若參數值為中文,開啟的頁面該參數值會亂碼。
這是因為超級連結傳遞過來的參數被編碼過了,所以在 jsp 頁面中獲取該參數時,需要透過 java.net.URLDecoder.decode 進行解碼才能解決亂碼問題。
操作方法很簡單,修改下 jsp 檔案裏面獲取參數的程式碼即可。例如:
原始碼是:
String NAME = request.getParameter("NAME");
修改為:
String NAME =java.net.URLDecoder.decode(request.getParameter("NAME"),"UTF-8");