Javascript和Ajax中文乱码吐血版解决方案


Posted in Javascript onDecember 21, 2009

今天弄了一天的Ajax中文乱码问题,Ajax的乱码问题分为两种:

1. JavaScript输出的中文乱码,

比如:alert("中文乱码测试");

解决的办法比较简单,就是把jsp里所有的charset和pageEncoding的值都设置成相同的,一般是utf-8.

2. 这第二种就是Ajax从服务器端获得的数据出现乱码的问题。(我搜了n个小时试了n中方法才找到答案)

现在将我搜集的比较有效的方法都与大家分享:(我使用的开发环境是Eclipse,相信其他语言和开发环境都差不太多。)

 比如

var message = xmlHttp.responseText;
 alert("message: "+message);

获得这个message输出就是乱码

 

解决办法:

1. 修改编码。切记要将代码备份一下,改了编码之后中文会变为乱码。

在js文件上右键点击Properties,修改Text file encode 为UTF-8(这里应当与jsp中的编码相同) 

Javascript和Ajax中文乱码吐血版解决方案 

同样的将JavaScript source file和JSP的Default encoding设置为UTF-8(这里应当与jsp中的编码相同,这样以后的项目就都是utf-8的编码了,推荐使用这个)

2. 注意response.setContentType("text/html;charset=utf-8");和PrintWriter out = response.getWriter();的位置关系,切记要将PrintWriter out = response.getWriter();放在response.setContentType("text/html;charset=utf-8");的后面,否则设置的编码将无效,这也是我弄了n久都搞不定的原因!!!

问题解决。 

Javascript 相关文章推荐
Jquery 1.42 checkbox 全选和反选代码
Mar 27 Javascript
JavaScript Distilled 基础知识与函数
Apr 07 Javascript
js对象与打印对象分析比较
Apr 23 Javascript
如何从jQuery的ajax请求中删除X-Requested-With
Dec 11 Javascript
js动态创建上传表单通过iframe模拟Ajax实现无刷新
Feb 20 Javascript
网页中表单按回车就自动提交的问题的解决方案
Nov 03 Javascript
jQuery下拉美化搜索表单效果代码分享
Aug 25 Javascript
JS响应鼠标点击实现两个滑块区间拖动效果
Oct 26 Javascript
jQuery给元素添加样式的方法详解
Dec 30 Javascript
浅析jQuery 3.0中的Data
Jun 14 Javascript
Vue常用指令详解分析
Aug 19 Javascript
vue中v-model对select的绑定操作
Aug 31 Javascript
利用jQuery的$.event.fix函数统一浏览器event事件处理
Dec 21 #Javascript
jQuery 连续列表实现代码
Dec 21 #Javascript
jQuery解决iframe高度自适应代码
Dec 20 #Javascript
IE 上下滚动展示模仿Marquee机制
Dec 20 #Javascript
js控制div及网页相关属性的代码
Dec 19 #Javascript
JQuery Tips(4) 一些关于提高JQuery性能的Tips
Dec 19 #Javascript
JS 的应用开发初探(mootools)
Dec 19 #Javascript
You might like
全国FM电台频率大全 - 4 山西省
2020/03/11 无线电
NOT NULL 和NULL
2007/01/15 PHP
php遍历数组的方法分享
2012/03/22 PHP
ThinkPHP多语言支持与多模板支持概述
2014/08/22 PHP
Windows下安装PHP单元测试环境PHPUnit图文教程
2014/10/24 PHP
Laravel实现用户注册和登录
2015/01/23 PHP
PHP实现UTF8二进制及明文字符串的转化功能示例
2017/11/20 PHP
Bootstrap+PHP实现多图上传功能实例详解
2018/04/08 PHP
Windows上php5.6操作mongodb数据库示例【配置、连接、获取实例】
2019/02/13 PHP
javascript编程起步(第一课)
2007/01/10 Javascript
弹出广告特效(一个IP只弹出一次)的代码
2007/07/27 Javascript
jQuery修改class属性和CSS样式整理
2015/01/30 Javascript
学习JavaScript设计模式(多态)
2015/11/25 Javascript
jQuery实现返回顶部功能
2016/02/23 Javascript
js图片延迟加载(Lazyload)三种实现方式
2017/03/01 Javascript
angular6 填坑之sdk的方法
2018/12/27 Javascript
JS实现图片轮播效果实例详解【可自动和手动】
2019/04/04 Javascript
微信小程序身份证验证方法实现详解
2019/06/28 Javascript
vue自定义树状结构图的实现方法
2020/10/18 Javascript
Python实现批量转换文件编码的方法
2015/07/28 Python
python Socket之客户端和服务端握手详解
2017/09/18 Python
Python 解决中文写入Excel时抛异常的问题
2018/05/03 Python
使用python脚本自动创建pip.ini配置文件代码实例
2019/09/20 Python
使用python实现下载我们想听的歌曲,速度超快
2020/07/09 Python
手把手教你将Flask应用封装成Docker服务的实现
2020/08/19 Python
解决CSS3 transition-delay 属性默认值0不带单位失效的问题
2020/10/29 HTML / CSS
ABOUT YOU罗马尼亚:超过600个时尚品牌
2019/09/19 全球购物
如何防止同一个帐户被多人同时登录
2013/08/01 面试题
JavaScript实现前端网页版倒计时
2021/03/24 Javascript
行政助理岗位职责
2013/11/10 职场文书
师德师风学习材料
2014/12/19 职场文书
放射科岗位职责
2015/02/14 职场文书
郭明义观后感
2015/06/08 职场文书
《颐和园》教学反思
2016/02/19 职场文书
使用Selenium实现微博爬虫(预登录、展开全文、翻页)
2021/04/13 Python
MySQL对数据表已有表进行分区表的实现
2021/11/01 MySQL