Jquery ajax亂碼問題

2021-06-22 09:26:14 字數 699 閱讀 8631

jquery ajax亂碼問題很常見,鬱悶的是我倒很少遇到過,現在就系統的總結一下。

ajax亂碼是因為兩邊的編碼不一致產生的。前端和後端一般有utf8和gbk兩種編碼,因此一下做4種情況討論。

前端和後台檔案編碼都為utf8,此情況下不會產生亂碼。

前端和後台檔案編碼都為gbk,此情況下不會產生亂碼,但是要注意的是ajax預設以utf8處理,所以後台檔案裡加上一句header("content-type:text/html;charset=gbk");。

前端檔案編碼為utf8,後台頁面為gbk,需要在後台檔案裡加上一句header("content-type:text/html;charset=gbk");,否則會亂碼。

前端檔案編碼為gbk,後台頁面編碼為uft8,此情況下不會產生亂碼。

因此,亂碼的問題是因為後台沒有採用utf8檔案編碼方式,需要我們主動說明一下頁面是什麼編碼,用header輸出就可以。

但是有些時候是ajax請求別人的頁面,他既沒有採用uft8編碼,也沒有header說明是什麼編碼。這個就無解了,去呼叫這種頁面沒有意義。

再說一點,ajax可以設定請求頭,但是不能設定響應頭(可以讀取響應頭)。ajax提交亂碼的話比較好處理,用setrequestheader("content-type","text/html;charset=gb2312")就可以。 響應頭用getresponseheader("content-type")。

jquery ajax提交中文亂碼問題

post jquery提交中文引數服務端獲取的引數成亂碼問題 對傳輸的中文引數進行編碼 var namecon encodeuricomponent idname val post selectresult.do?method selectexecute4 function data text 在伺...

jquery ajax返回html亂碼解決

情景 index.html 使用如下 訪問另外乙個html片段12 3456 78910 1112 13functionrewritedata id success function dd 注意 被訪問的html為片段檔案 裡面只有一些資料 沒有頭部沒有設定編碼 使用ajax在發出請求後,xmlht...

jquery ajax請求問題

在請求後台介面的時候,我們很常見的用法就是 ajax 平常從來沒有在意過請求的時間響應的時間問題,今天在程式中接觸到了,如下圖所示的status 還有在pending的請求。我使用的是datatables框架,請求好的資料直接塞到框架裡面。但是這個就會出現問題了,比如先請求的status還沒有200...