|
復(fù)制代碼 代碼如下:
http_request.open("POST",url,true);
http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
http_request.send("action="+strName+"&val="+val); //如果val的值為中文,則產(chǎn)生亂碼
//解決方法很簡(jiǎn)單:使用Javascript中的escape(string) 函數(shù)
復(fù)制代碼 代碼如下:
http_request.open("POST",url,true);
http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
http_request.send("action="+strName+"&val="+escape(val)); //val的值為中文不會(huì)產(chǎn)生亂碼
關(guān)于在AJAX中GET回的ResponseText中文亂碼的最簡(jiǎn)解決辦法
用AJAX來GET回一個(gè)頁面時(shí),RESPONSETEXT里面的中文多半會(huì)出現(xiàn)亂碼,這是因?yàn)閤mlhttp在處理返回的responseText的時(shí)候,是把resposeBody按UTF-8編碼進(jìn)解碼考形成的,如果服務(wù)器送出的確實(shí)是UTF-8的數(shù)據(jù)流的時(shí)候漢字會(huì)正確顯示,而送出了GBK編碼流的時(shí)候就亂了。解決的辦法就是在送出的流里面加一個(gè)HEADER,指明送出的是什么編碼流,這樣XMLHTTP就不會(huì)亂搞了。
復(fù)制代碼 代碼如下:
php:header('Content-Type:text/html;charset=GB2312');
ASP:Response.Charset("GB2312")
JSP:response.setHeader("Charset","GB2312");
php技術(shù):php+AJAX傳送中文會(huì)導(dǎo)致亂碼的問題的解決方法,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。