解決Jquery在GET方式傳遞引數時gb2312中文編碼亂碼
資料傳遞編碼僅支援UTF-8,這個雖然是全球統一編碼,但是也要考慮一下中國人名本地網站的編碼問題吧
而且 在jquery的傳送端,無論你設定了程式級編碼還是頁面級編碼,jquery都會使用utf-8的編碼方式傳遞過去
有些網站都運營好長事件了,完全修改UTF-8確實有點困難,好了牢騷就發到這裡,下面是自己寫的一個解決例子
希望能對大家有一些幫助。
原理:
在ajax傳送端使用escape方法。然後在接收端使用 unescape方法轉換
例子:
gb2312.html
- <html>
- <head>
- <meta http-equiv=“Content-Type” content=“text/html; charset=gb2312” />
- <SCRIPT LANGUAGE=“JavaScript” src=“js/jquery-1.2.4.js”></script>
- <SCRIPT LANGUAGE=“JavaScript”>
- <!–
- $(document).ready(function(){
- $(“#btn”).click(function(){
- $.get(“php/gb2312.php”,function(data){
- $(“#content”).html(unescape(data));//這裡unescape一下就可以了
- })
- });
- });
- //–>
- </SCRIPT>
- <title>無標題文件</title>
- </head>
- <body>
- <div ID=“btn”>獲得ajax中文</div>
- <div ID=“content”></div>
- </body>
- </html>
gb2312.php
- <?
- echo escape(” GB2312中文”);
- function escape($str) {
- preg_match_all(“/[x80-xff].|[x01-x7f]+/”,$str,$r);
- $ar = $r[0];
- foreach($ar as $k=>$v) {
- if(ord($v[0]) < 128)
- $ar[$k] = rawurlencode($v);
- else
- $ar[$k] = “%u”.bin2hex(iconv(“GB2312”,“UCS-2”,$v));
- }
- return join(“”,$ar);
- }
- ?>
本文轉自黃聰部落格園部落格,原文連結:http://www.cnblogs.com/huangcong/archive/2011/04/25/2026880.html,如需轉載請自行聯絡原作者
相關文章
- iframe利用get方式傳遞中文引數會出現亂碼解決方案
- 解決ajax get post方式提交中文引數亂碼問題
- js的url傳遞中文引數亂碼的解決方案JS
- ajax使用url傳遞中文引數亂碼問題解決
- 引數傳遞中編碼問題(Get/Post 方式)(一)
- 引數傳遞中編碼問題(Get/Post 方式)(二)
- GET請求引數為中文時亂碼分析
- js解決url傳引數中文亂碼問題JS
- Get提交方式中文亂碼
- JSP中四種傳遞引數中文亂碼問題JS
- PHP接收GET中文引數亂碼深入研究PHP
- jetty,tomcat URI傳中文引數亂碼的解決辦法JettyTomcat
- 解決Url帶中文引數亂碼問題
- 請教一個傳遞引數的時候中文顯示亂碼的問題。
- Spring MVC 中文編碼亂碼解決SpringMVC
- url傳遞的引數值編碼
- HttpClient多檔案上傳程式碼及普通引數中文亂碼問題解決HTTPclient
- jn專案-解決前臺中文引數傳到後臺亂碼問題
- requests.get()爬去中文網頁亂碼解決方法網頁
- jboss get請求中文亂碼問題的解決[zt]
- spring mvc中關於url中傳遞中文亂碼的解決方法SpringMVC
- [WEB開發]html頁面向後臺傳遞url中文亂碼解決方案WebHTML
- RHEL中文亂碼解決
- HttpClient 解決中文亂碼HTTPclient
- MySQL解決中文亂碼MySql
- 給url傳遞的引數值編碼程式碼例項
- docker 容器指定utf-8編碼,解決中文亂碼Docker
- jQuery ajax提交中文編碼(gbk)解決jQuery
- iOS 解決列印 NSDictionary 時,中文亂碼問題iOS
- request/response解決中文亂碼
- eclipse中文亂碼解決Eclipse
- myeclipse解決中文亂碼Eclipse
- 解決Linux中文亂碼Linux
- ROS中解決中文亂碼ROS
- 解決中文亂碼問題
- Spring Tomcat Post Get 請求引數有中文時出現亂碼或+號變空格等關於編碼的問題SpringTomcat
- request的get和post引數亂碼問題
- Vue + Spring Boot——axios使用GET以引數的方式傳遞物件到SpringMVC解決方案VueSpring BootiOS物件SpringMVC