FireFox浏览器,Ajax传输中文乱码,IE没问题

yuanetking 2006-08-20 08:58:07
网络上的东西都尝试遍了,方法如下:无非就是接收信息和发送信息的时候都解码,IE确实好用。但是唯独FireFox,无论如何尝试都解决不了问题。。。高人相助。。
...全文
746 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
iohaitao 2006-11-20
  • 打赏
  • 举报
回复
我在jsp中,显示页面和处理页面的编码格式都是gbk,responseText怎样处理中文??
seeu1688 2006-08-29
  • 打赏
  • 举报
回复
firefox要严格指定页面编码,需将页面编码设置为传递字符编码,传递字符才能正常显示。

ie若不指定页面编码,它会将上一次显示的页面编码作为当前页面的编码,甚至对当前页面本身保存的编码形式视而不见。这可能是ie的一个智能之处,但显然会让专业人士摸不着头脑。:)


seeu1688 2006-08-29
  • 打赏
  • 举报
回复
to fire214:
encodeURIComponent()是utf-8编码的,要后台回显出来用iconv,或mb_convert_encoding转换成你页面所属的编码
xzr2004 2006-08-29
  • 打赏
  • 举报
回复
设置Content-Type属性试试
mlhttp.setRequestHeader("Content-Type","text/html; charset=gb2312");
fire214 2006-08-29
  • 打赏
  • 举报
回复
web 用的是 gb2312, encodeURIComponent() 到 php中后,我想把它显示回来因该怎么做?
helloMoney 2006-08-28
  • 打赏
  • 举报
回复
我也遇到了这个问题,不过我是发送中文到服务器乱码,服务端代码如下

String s=request.getParameter("cityName");
if(s==null){
return;
}
String name=new String(s.getBytes("ISO-8859-1"),"GBK");

如果是IE正常
如果是firefox则必须s.getBytes("ISO-8859-1"),"UTF8")而且还会在中文后面多个?号
用escape函数编码后传送还是一样,等高人解答
php521 2006-08-28
  • 打赏
  • 举报
回复
是不是你的编码有选择得不对???
helloMoney 2006-08-28
  • 打赏
  • 举报
回复
我已经解决这个问题了
首先客户端javascript使用encodeURIComponent()函数把你要传送的中文编码
然后再服务器
new String(s.getBytes("ISO-8859-1"),"UTF-8")
用UTF-8编码就可以了
大猫钓鱼 2006-08-27
  • 打赏
  • 举报
回复
从数据库传输还是XML还是文本文件?
zxmout 2006-08-25
  • 打赏
  • 举报
回复
用inconv了不?
wjs2338 2006-08-25
  • 打赏
  • 举报
回复
建议JSP和servlet的编码都设成相同.用utf-8看看
郭大侠_ 2006-08-25
  • 打赏
  • 举报
回复
到网上找些ie和ff的js控制区别的文档,我帮你顶了

52,797

社区成员

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

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