jQuery的ajax傳遞時亂碼解決
Jsp中
var num = $("#txtNum").val();
var name = encodeURIComponent($("#txtName").val());
var className = encodeURIComponent($("#selectClasses option:selected").text());
Action中
stu.setNum(URLDecoder.decode(num, "UTF-8"));
stu.setName(URLDecoder.decode(name, "UTF-8"));
stu.setClassName(URLDecoder.decode(className, "UTF-8"));
一般在post中struts過濾器會自動處理。而在get中,需要這樣操作。
原理:
encodeURIComponent是js內置函數,是將中文韓文等特殊字符轉換成utf-8格式的url編碼。
如果給後台傳遞參數需要使用encodeURIComponent時,需要後台解碼對utf-8支持
還要注意的是form中的編碼方式和當前頁麵編碼方式相同。
最後更新:2017-04-02 17:51:26