websphere中ajax中文乱码 在线等,分不够可另开贴加
代码很简单,ajax,参数中文乱码,我的jsp是gbk编码,ie中ajax默认utf8编码,后台servlet中不管怎么设置都是乱码,直接request.getInputStream()取出二进制流查看过,应该是utf8编码,但不知道为什么,设置了还是不行。代码如下:
JSP:
<%@ page language="java" contentType="text/html;charset=GBK" pageEncoding="GBK"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK">
<script type="text/javascript" src="Ajax.js" ></script>
<script type="text/javascript">
debugger
ajax.defaultPostHeader = "application/x-www-form-urlencoded;charset=GBK";
window.onload=function()
{
debugger;
ajax.request("POST", "service"
,{
success:function (response)
{
alert("(" + response.responseText + ")");
}
, failure:function (response)
{
throw new Error("程序无法执行");//",错误地址:"+className+"."+method
}
, scope:null, argument:{}
}
,"name=张三");
}
</script>
</head>
<body>
张三
</body>
</html>
SERVLET service.java:
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
request.setCharacterEncoding("UTF-8");
// response.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
String name = request.getParameter("name");
response.getWriter().println(name);
}