3 回答

TA貢獻1796條經驗 獲得超7個贊
設置contentType這種做法是不行的.不管你怎么設置,最后傳到服務器的都是utf-8...因為ajax在發送數據前會自動進行一次encodeURLComplent,這個方法是按utf-8格式編碼的.jquery ajax亂碼一般有以下幾種方案,不知道能不能成功..1.配置struts2默認編碼為utf-8 2.如果默認編碼不能改為utf-8,可以寫一個過濾器,如果請求為ajax請求,則request.setContentType("utf-8"); 3.更改jquery ajax底層代碼,這個你可以網上搜一下. 4.這個方法比較普遍,二次轉碼.就是說中文數據可以在頁面encodeURI兩次,記住是兩次,然后服務器端解碼.

TA貢獻1794條經驗 獲得超7個贊
設置一下編碼就行了 如: $.ajax({url:'url',type:'POST',dataType:'json',contentType:'GBK'}) 設置contentType就行了 注意如果帶中文 不能使用get請求要使用post請求

TA貢獻1865條經驗 獲得超7個贊
后臺的response需要設置
response.setContentType("text/html");
response.setCharacterEncoding("GB2312");
response.getWriter().print(strBuf.toString());
添加回答
舉報