<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Java軟件報表軟件技術博客

    java報表軟件技術匯總 java報表軟件制作 報表軟件新聞
    posts - 355, comments - 100, trackbacks - 0, articles - 3
       :: 首頁 :: 新隨筆 ::  :: 聚合  :: 管理

    1、場景描述

    在用報表開發工具FineReport設計的web報表中,給iframe設置src嵌入某個報表時,往往會給報表傳遞初始的參數值,例如:

    <iframe id="reportFrame" width="900" height="400" src="/WebReport/ReportServer?reportlet=/report.cpt&參數1=參數值&參數2=參數值..."></iframe>  

    若參數名稱、參數值甚至報表名稱中包含中文或者特殊字符時,如果不進行編碼轉換,可能會出現一系列問題。比如下圖:


    今天我就來講講該如何如何傳遞中文參數。

    2、使用cjkEncode對中文進行編碼轉換

    使用cjkEncode對調用報表的路徑或參數進行編碼,報表獲取到參數后會自動進行解碼,保證不會出現亂碼等一系列情況。

    cjkEncode是FR內部封裝好的編碼方法,在js中使用cjkEncode有兩種方式,該節我們舉例介紹。

    2.1加載finereport.js使用cjkEncode

    cjkEncode方法在FineReport的JS庫中已經預先提供了,用戶可以在自己的網頁中引入FineReport的JS庫,就可以使用FR.cjkEncode對中日韓文字符進行編碼,如下對調用報表的url進行cjkEncode:

    1.      <html>    

    2.        <head>    

    3.        <title>FineReport Demo</title>    

    4.        <meta http-equiv="Content-Type" content="text/html; charset=GBK" />    

    5.        <script type="text/javascript" src="/WebReport/ReportServer?op=emb&resource=finereport.js"></script>  

    6.        <script language="javascript">  

    7.          function autoLoad(){  

    8.            var addr = FR.cjkEncode("/WebReport/ReportServer?reportlet=/doc/Primary/Parameter/Parameter.cpt&地區=華東");  

    9.            document.getElementById("reportFrame").src = addr;  

    10.      }  

    11.      window.onload = autoLoad;   

    12.    </script>  

    13.    </head>    

    14.    <body>    

    15.      <iframe id="reportFrame" width="900" height="400" ></iframe>    

    16.    </body>  

    17.  </html>  

    finereport.js使用的是jquery框架,若用戶也使用了jquery,可能會造成沖突,這時建議不要引入finereport.js,而是將cjkEncode方法拷貝到頁面中直接使用,詳見下面的方法。

    已完成示例請參照%FR_HOME%\WebReport|page_demo\parameter_ch.html

    2.2直接調用cjkEncode

    加載finereport.js再引用cjkEncode,一方面可能會引起js沖突,另一方面也加載了很多不必要的方法。

    若用戶只需要使用該方法,可以將cjkEncode實現的代碼復制到網頁中或者用戶自己的js文件中,然后再引用cjkEncode。

    1.     <html>  

    2.       <head>    

    3.       <title>FineReport Demo</title>    

    4.       <meta http-equiv="Content-Type" content="text/html; charset=GBK" />    

    5.       <script type="text/javascript">  

    6.         //cjkEncode方法的實現代碼,放在網頁head中或者用戶自己的js文件中  

    7.         function cjkEncode(text) {                                                                            

    8.           if (text == null) {         

    9.             return "";         

    10.        }         

    11.        var newText = "";         

    12.        for (var i = 0; i < text.length; i++) {         

    13.          var code = text.charCodeAt (i);          

    14.          if (code >= 128 || code == 91 || code == 93) {  //91 is "[", 93 is "]".         

    15.            newText += "[" + code.toString(16) + "]";         

    16.          } else {         

    17.            newText += text.charAt(i);         

    18.          }         

    19.        }         

    20.        return newText;         

    21.      }     

     


     

     




    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲处破女AV日韩精品| 黑人大战亚洲人精品一区 | 久久精品国产亚洲综合色| 黄色一级毛片免费| 免费成人黄色大片| 麻豆安全免费网址入口| 亚洲国产婷婷综合在线精品| 黄色a级片免费看| JLZZJLZZ亚洲乱熟无码| 中文字幕一区二区免费| 亚洲精品自在在线观看| 老司机69精品成免费视频| 亚洲国产精品一区二区久久| 2019中文字幕在线电影免费| 亚洲色图综合网站| 一个人看的www在线观看免费| 亚洲综合在线一区二区三区| 国产精品四虎在线观看免费| 日本在线观看免费高清| 精品亚洲综合久久中文字幕| 免费国产黄网站在线观看视频| 亚洲特级aaaaaa毛片| 免费看a级黄色片| 一区二区三区免费在线视频 | 亚洲熟妇丰满xxxxx| 又粗又大又硬又爽的免费视频| 日日躁狠狠躁狠狠爱免费视频| 亚洲国产精品无码久久一区二区 | 国产青草视频在线观看免费影院| 国产精品亚洲专一区二区三区| 国产亚洲美日韩AV中文字幕无码成人| 国产一级片免费看| 久久久国产亚洲精品| 亚洲精品国产高清嫩草影院| 久久午夜夜伦鲁鲁片免费无码| 最新亚洲精品国偷自产在线| 亚洲精品无码久久久久AV麻豆| 最好看最新的中文字幕免费| 欧美亚洲精品一区二区| 国产亚洲精AA在线观看SEE| 大学生高清一级毛片免费|