反饋已提交
網絡繁忙
在使用超级链接到网页传递参数时,若值中有中文,会出现乱码,如下图所示,那么如何传递让传递的中文值不出现乱码呢?
由于 FR 中的超级链接传递过来的参数被编码过了,所以在 jsp 页面中获取该参数时,需要通过 java.net.URLDecoder.decode 进行解码。
打开上一节中的模板%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\超链传递网页参数.cpt
在超级链接中增加一个参数,参数名为 NAME,参数值为=B2,如下图:
已完成模板请参照%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\超链到网页传递中文转码.cpt
在获取参数中增加如下代码:
String NAME = java.net.URLDecoder.decode(request.getParameter("NAME"),"UTF-8"); //将NAME参数的值进行解码
注:若 ID 和 TELEPHONE 也有中文,也可以通过此方法进行反编码。
完整代码如下:
<%@ page language="java" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <% String ID = java.net.URLDecoder.decode(request.getParameter("ID"),"UTF-8"); String NAME =java.net.URLDecoder.decode(request.getParameter("NAME"),"UTF-8"); String TELEPHONE = java.net.URLDecoder.decode(request.getParameter("TELEPHONE"),"UTF-8"); %> <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="NAME" value="<%=NAME %>"/></td> </tr> <tr> <th>电话:</th><td><input type="text" id="TELEPHONE" value="<%=TELEPHONE %>"/></td> </tr> </table> </body> </html>
启动 Tomcat 服务器,预览模板,点击超级链接,可以看到对应的中文正常显示了,如下图:
在线查看示例效果请点击 超链到网页传递中文转码 .cpt
点击下载模板:超链到网页传递中文转码.cpt
文 檔回 饋
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉