ajax get方式访问服务器中文乱码问题
1 当以get方式访问时候解决中文传递问题
function validate() {
createXMLHttpRequest();
var username = document.getElementById("username");
var url = "Validation?username=" +encodeURIComponent(username.value);//采用encodeURIComponent对传递的值转换
xmlHttp.open("GET", url, true);
xmlHttp.onreadystatechange = callback;
xmlHttp.send(null);
}
2
在服务器端servlet以
String name= new String(request.getParameter("username").getBytes("ISO-8859-1"),"utf-8");方式获取可以转化为中文。
3 对应服务器端的中文,传递到前台页面则要:
并设置response.setContentType("text/xml;charset=utf-8");
String message="你输入的用户名不对";
message= new String(message.getBytes("utf-8"),"ISO-8859-1");
out.println("<response>");
out.println("<passed>"+Boolean.toString(passed)+"</passed>");
out.println("<result>"+message+"</result>");
out.println("</response>");
out.close();