在使用 jQuery 的 Ajax 中,經常會碰到 GET 請求返回的中文出現亂碼的情況,這主要是因為服務器和客戶端在傳輸數據時,字符集的不統一而產生的。下面就結合代碼給大家講解如何解決 jQuery Ajax Get 請求中文亂碼問題。
$.ajax({ url: '/example', type: 'GET', success: function(data){ // do something with data }, error: function(xhr, errorText, error){ // error handling } });
以上是一段 jQuery Ajax Get 請求的基本代碼結構。如果不進行字符集設置,中文數據很有可能會出現亂碼。下面就針對這個情況,解決方法如下:
$.ajax({ url: '/example', type: 'GET', contentType:'application/json;charset=utf-8', success: function(data){ // do something with data }, error: function(xhr, errorText, error){ // error handling } });
在 Ajax 請求中添加 contentType 屬性,制定請求內容類型為 “application/json;charset=utf-8” 即可解決中文亂碼問題。具體作用是指定響應中的數據格式為 JSON,并用 UTF-8 編碼。如下圖所示:
application/json; charset=utf-8
最后,需要注意的是,contentType 屬性需要和后臺代碼使用的字符集一致才能有效。