今天在用jquery.ajax()方法時,頁面傳的值到後臺是亂碼,解決這個問題有兩個方法:
方法一:用方法encodeURI() ,一定是兩個encodeURI()
前臺頁面處理方法如下:我這的編碼爲UTF-8,如下所示:
$.ajax({
url:"getIsAddWorkToday.action?1=1&workName="+encodeURI
(encodeURI(empName)),
cache:false,
type:"post",
contentType:”text/html;charset=utf-8”,
success:function(text) {}
});
後臺也要做相應處理方法如下:
String workName =request.getParameter("workName");
if
(!"".equals(workName) && workName !=null)
{
workName = java.net.URLDecoder.decode(workName,"utf-8");
}
方法二:給ajax()方法加一個屬性contentType
contentType類型:String默認值:"application/x-www-form-urlencoded"。它是發送信息至服務器時內容編碼類型。一般我們設置爲text/html即可.如下所示
$.ajax({
url:"getIsAddWorkToday.action?1=1&workName="+empName,
cache:false,
type:"post",
contentType:”text/html;charset=utf-8”,
success:function(text) {}
});
總結的也許存在問題,希望大家能給出意見。