1.get 不用编码
var text = $("#searchText").val();
JEND.DSS.get(this.AjaxUrls.mailListURL, function(data){...}, text , 'UTF-8');
Servlet服务器解码
String search = request.getParameter("search");
String tempsearch = new String(search.getBytes("ISO8859-1"),"UTF-8");
var name = myEncode($(this).attr("userName"));
JEND.DSS.get(self.AjaxUrls.addContactAction, function(data){
if (data != "wrongUrl") {
fn.call(fn, data);
}
}, name , 'UTF-8');
Servlet服务器解码
contactName = new String(name .trim().getBytes("ISO-8859-1"), "utf-8");
1.post 要编码
paramData += "&subject=" + myEncode(DOM.find('#subject').val());
$.post(AjaxUrls.mailSendURL, paramData, function(d,paramData){},paramData,"UTF-8")
String subject = request.getParameter("subject");
第一种方法:在客户端的javaScript中传递参数时,在参数值之前加上encodeURI()一次(记住这个地方是一次,下面第二种方法是用encodeURI()两次),然后在服务器端获得参数时对参数进行解码,如:String old = request.getParameter("name");
String name = new String(old.getBytes("iso8859-1"),"UTF-8");
示例:客户端的javaScript脚本
function verify(){
$.get("AJAXServer?name="+encodeURI($("#userName").val()),null,function callback(data){$("#result").html(data);});
}
String old = request.getParameter("name");
String name = new String(old.getBytes("iso8859-1"),"UTF-8");
第二种方法:在客户端的javaScript中传递参数时,在参数值之前加上encodeURI()两次(记住这个地方是两次,上面第一种方法是用encodeURI()一次),然后在服务器端获得参数时对参数进行解码,如:String old = request.getParameter("name");
String name = URLDecoder.decode(old,"UTF-8");
客户端的javaScript脚本代码:
function verify(){
$.get("AJAXServer?name="+encodeURI(encodeURI($("#userName").val())),null,function callback(data){$("#result").html(data);});
}
String old = request.getParameter("name");
String name = URLDecoder.decode(old,"UTF-8");