ajax中文乱码问题

coolingwind 2008-07-16 01:02:34
我做了一个测试程序,我把页面、prototype.js、服务器中的所有字符集都设置成GBK,传递过程中有中文,结果在服务器上解析的时候中文变成乱码,请问这个是什么原因?
部分代码:
jsp:
<%@ page language="java" contentType="text/html; charset=GBK"
pageEncoding="GBK"%>
服务器中:
String CONTENT_TYPE = "text/html; charset=GBK";
response.setContentType(CONTENT_TYPE);
response.setHeader("Cache-Control", "no-cache");
response.setCharacterEncoding("GBK");
传递:
var temp="reportname=我们aaaa";
this.url这个是Servlet;
var aj = new Ajax.Request(this.url,{
asynchronous: true, //是否是异步
method: 'post', //HTTP请求方式 get
parameters: params, //请求参数
onSuccess: function(request) {
...全文
118 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
coolingwind 2008-07-16
  • 打赏
  • 举报
回复
谢谢,都解决了,结贴
Slumber 2008-07-16
  • 打赏
  • 举报
回复
ajax始终是以UTF-8传送数据的,跟JSP设置无关。在服务器端取也只能以UTF-8格式取。建议你在服务器端加一个过滤器,对以ajax发送的request统一以UTF-8转码,这样就不会有乱码了
coolingwind 2008-07-16
  • 打赏
  • 举报
回复
没有一种方式可以,看来高手放假了哈!!
chenhongxin 2008-07-16
  • 打赏
  • 举报
回复
prototype.js
默认是utf-8的呀!!!
APPLESUCH5 2008-07-16
  • 打赏
  • 举报
回复
escape
redcn2004 2008-07-16
  • 打赏
  • 举报
回复
prototype.js默认是用utf-8传递的,自从出现了乱码以后,我立马把prototype换了,换成另外的框架了
flyfly_lucky 2008-07-16
  • 打赏
  • 举报
回复
遇见。。。。。。。。。。。。。。。。。。

52,802

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧