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

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

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

    隨筆-7  評論-24  文章-102  trackbacks-0


    Ajax開發過程中提交獲取數據的亂碼問題

    摘錄

    # re: Ajax開發過程中提交獲取數據的亂碼問題 2006-09-06 15:32 | 烏鴉在黑夜里飛

    實際上所有的問題都來自編碼的不統一:
    1、HTTP/POST方式在缺省情況下,采用的是“x-www-form-urlencoded”進行編碼,它和JavaScript里面的encodeURI所起的作用是一樣的;
    2、經過這樣編碼的內容,到達后臺時,其中的字符都是UTF-8編碼格式的;
    3、如果你的Servlet/JSP指定輸出使用的Content-Type是UTF-8,恭喜你,你不需要對這些Parameters進行特別的編碼、解碼操作,它一定是正常的;
    4、否則你需要對這些parameter進行解、編碼操作,例如你的頁面是GBK編碼,那么你需要這么寫:
    String sPara = new String(request.getParamter("test").getBytes("iso-8859-1"),"GBK");
    采用gb2312編碼的也可以采用GBK編碼;
    5、如果你是在eclipse中進行工作,請注意你的Servlet和JSP文件的屬性,其中的編碼必須和content-type中設置的一樣,否則javac會對你的文件進行錯誤的編碼,這時候的字節碼文件本身的字符串就是錯誤的,輸出也不頂用;
    6、最后做一個總結:
    6.1、servlet/JSP文件本身的編碼必須和content-type輸出的一致,否則需要加入額外的編碼、解碼步驟;
    6.2、HTTP/POST方式和encodeURI方式傳入的編碼都是UTF-8的;
    6.3、普通的window.open(...),也就是HTTP/GET方式,其傳入的編碼是和運行script的頁面編碼一致的;
    6.4、后臺解碼必須通過iso-8859-1進行解碼,再使用你的目標編碼進行編碼;
    6.5、所有的問題基本上可以得到解決。

      回復  更多評論



     


    解決AJAX的亂碼,可以用 escape()函數的呀。
    escape 方法不能夠用來對統一資源標示碼 (URI) 進行編碼。對其編碼應使用 encodeURI 和encodeURIComponent 方法。

     

     



    在asp中解決亂碼問題只需要在服務器端加上<%Response.ContentType = "text/html;charset=GB2312"%>

     

    posted on 2009-04-25 22:49 黃小二 閱讀(201) 評論(0)  編輯  收藏 所屬分類: Ajax
    主站蜘蛛池模板: 国产精品极品美女自在线观看免费| 亚洲精品乱码久久久久蜜桃| 久久久久久久国产免费看| 亚洲国产精品综合久久网络| 四虎国产精品永免费| 久久精品国产亚洲5555| 久99久无码精品视频免费播放| 亚洲香蕉网久久综合影视| 香蕉视频在线免费看| 亚洲AV无码专区国产乱码4SE| 亚洲精品免费在线观看| 亚洲精品无码久久毛片波多野吉衣| 亚欧在线精品免费观看一区| 亚洲精品福利在线观看| 精品无码国产污污污免费| 又大又硬又粗又黄的视频免费看| 国产午夜亚洲精品国产成人小说| 国内少妇偷人精品视频免费| 亚洲制服丝袜一区二区三区| 国产成人啪精品视频免费网| 国产精品福利片免费看| 亚洲精品熟女国产| 又粗又大又硬又爽的免费视频| a级毛片黄免费a级毛片| 亚洲成人午夜电影| 亚洲国产成人爱av在线播放| 久久成人免费大片| 国产午夜亚洲精品| 亚洲香蕉成人AV网站在线观看| 亚欧免费视频一区二区三区| 免费夜色污私人影院网站| 亚洲AV无码专区电影在线观看| 日本一区二区三区免费高清| 国产免费伦精品一区二区三区| 亚洲精品在线视频观看| 免费人成视频在线观看视频| 三年片在线观看免费观看大全动漫| 亚洲一区二区无码偷拍| 黑人精品videos亚洲人| 成人免费视频网址| 欧洲人成在线免费|