Javascript和Ajax中文乱码吐血版解决方案
引自:http://www.cnblogs.com/dongritengfei/archive/2009/12/21/1628489.html
今天弄了一天的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 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久都搞不定的原因!!!
补充:脚本可以这样写:
<script for="cu_model" event="onChange" language=VBScript charset="utf-8">
</script >
相关文档:
最近做的项目中有个要求,需要将数据导出到Excel中,关于这个就不是什么问题,网上的资料很多。可当Table中有Input(text)之类的元素是怎么办?
做法:
修改Input的outerHTML;
具体例子:
function resetInput()
{
&nbs ......
函数是进行模块化程序设计的基础,编写复杂的Ajax应用程序,必须对函数有更深入的了解。JavaScript中的函数不同于其他的语言,每个函数都是
作为一个对象被维护和运行的。通过函数对象的性质,可以很方便的将一个函数赋值给一个变量或者将函数作为参数传递。在继续讲述之前,先看一下函数的使用语
法:
function func1(& ......
什么是 AJAX 库 API?
AJAX 库 API 是一种内容分布网络,可载入最受欢迎的开源 JavaScript 库的架构。通过使用 Google AJAX API 载入程序的 google.load() 方法,您的应用程序能够迅速从全球任何位置访问不断增长的、最受欢迎的开源 JavaScript 库列表,包括:
jQuery
jQuery UI
Prototype
script.aculo.us
Mo ......