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

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

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

    鄧華

    BlogJava 聯(lián)系 聚合 管理
      48 Posts :: 0 Stories :: 149 Comments :: 0 Trackbacks
    這回碰到的情況是prototype.js產(chǎn)生的序列化字符串傳遞到后臺后,亂碼的問題。

    環(huán)境: prototype-1.4.0.js,gb2312編碼的jsp?,后臺:Linux?2.6.9, resin2., resin的啟動參數(shù)加了 -Dfile.encoding=ISO-8859-1


    在網(wǎng)頁提交參數(shù)的時候。 用了:

    var?myAjax?=?new?Ajax.Request(url,?{method:?'post',?parameters:?Form.serialize($('converge')),onComplete:?showResponse,onLoaded:doing,onLoading:doing});


    其中Form.serialize($('converge')),是把converge表單中所有的字段,拼成method=xxx&type=sss的形式, 在prototype的函數(shù)中,會把key和value分別用encodeURIComponent 來把一個字符串轉(zhuǎn)成utf-8的URL編碼形式.

    比如,“中文”會被編碼成:%E4%B8%AD%E6%96%87

    但該字符串傳到后臺時,會被識別成亂碼. 用request.getParameter取到的字符串也是亂碼,而不是本身的字符。

    主要原因是%號,如果該串改成%22E4%22B8%22AD%22E6%2296%2287 也是可以識別的.?

    解決方法: 在prototype文件中找到 encodeURIComponent? 這段, 在encodeURIComponent 后,再將該字符串用escape方法再編碼一次。 這時候傳到后臺,用request.getParameter,可以得到編碼后的正確的字符串。即 %E4%B8%AD%E6%96%87 .

    這時,可以用java.net.URLDecoder.decode(keyword,"UTF-8");? 對這個字符串進行解碼,從而得到正確的中文。



    posted on 2006-11-09 09:52 鄧華的碎碎念 閱讀(472) 評論(0)  編輯  收藏

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


    網(wǎng)站導航:
    博客園   IT新聞   Chat2DB   C++博客   博問  
     
    主站蜘蛛池模板: 亚洲 欧洲 视频 伦小说| aa级毛片毛片免费观看久| 免费看一级做a爰片久久| 在线免费观看h片| 亚洲国产人成在线观看| 亚洲av无码国产精品色在线看不卡| 精品国产一区二区三区免费| 亚洲av极品无码专区在线观看| 亚洲成a人片在线观看国产| 最近中文字幕大全免费视频| 国产午夜亚洲精品不卡电影| 久久久久亚洲av无码专区喷水| 手机看片久久国产免费| 最好看的中文字幕2019免费| 精品免费AV一区二区三区| 亚洲乱亚洲乱妇无码| 亚洲日韩一页精品发布| 久久久久国产精品免费免费搜索 | 免费国产a国产片高清网站| 永久免费A∨片在线观看| 亚洲国产精品成人AV在线| 亚洲AV无一区二区三区久久| 国产精品色午夜视频免费看| 131美女爱做免费毛片| gogo免费在线观看| 亚洲乱码日产精品一二三| 久久亚洲精品人成综合网| 亚洲精品国自产拍在线观看| 91麻豆最新在线人成免费观看| 国产免费AV片在线观看播放| 亚洲精品自偷自拍无码| 亚洲日本乱码一区二区在线二产线| 亚洲欭美日韩颜射在线二| 国产男女猛烈无遮挡免费视频网站| 2020因为爱你带字幕免费观看全集 | 麻豆国产人免费人成免费视频 | 日韩电影免费观看| h视频在线观看免费| 狠狠入ady亚洲精品| 亚洲人成无码网站在线观看| 亚洲国产美女福利直播秀一区二区|