- 浏览: 30417 次
- 性别:
- 来自: 上海
最近访客 更多访客>>
最新评论
-
punan7005:
这不就是我们公司吗
转(坚决抛弃powerdesigner建模) -
jkluooop:
我尝试过啊,很郁闷,在第一次访问的时候IE跟FFX下老弹出登录 ...
JCIFS相关 -
every:
你好
请教2008 ad 如何配置ssl
AD、CA、SSL,绑定keystore
jQuery ajax乱码问题解决
一、测试环境
jQuery:1.3.2
tomcat:5.5.17
二、测试方法
1.使用get方式
服务器端java代码:
String name = new
String(request.getParameter("name").getBytes("iso8859-1"),"utf-8");
客户端js代码:
$.ajax({url: "2.jsp",type: "get",data:
{name:"中文"},success: function(response){
alert(response);
}});
结果:正确显示
$.ajax({url: "2.jsp",type: "get",data: "name=中文",success:
function(response){
alert(response);
}});
结果:乱码
$.get("2.jsp", { name: "中文" },function(response){
alert(response);
});
结果:正确显示
$.get("2.jsp", "name=中文",function(response){
alert(response);
});
结果:乱码
2.post方式
服务器端java代码:
request.setCharacterEncoding("UTF-8");
String
name = request.getParameter("name");
客户端js代码:
$.ajax({url: "3.jsp",type: "post",data:
"method=testAjaxPost&name=中文",success: function(response){
alert(response);
}});
结果:正确显示
$.ajax({url: "3.jsp",type: "post",data: {name:"中文"},success:
function(response){
alert(response);
}});
结果:正确显示
$.post("3.jsp", { name: "中文" },function(response){
alert(response);
});
结果:正确显示
$.post("3.jsp", "name=中文",function(response){
alert(response);
});
结果:正确显示
三、使用filter
public void doFilter(ServletRequest request, ServletResponse
response,
FilterChain chain) throws IOException,
ServletException {
HttpServletRequest req = (HttpServletRequest)
request;
if (req.getHeader("X-Requested-With") != null &&
req.getHeader("X-Requested-With").equalsIgnoreCase("XMLHttpRequest"))) {
request.setCharacterEncoding("utf-8");
} else {
request.setCharacterEncoding("gbk");
}
chain.doFilter(request, response);
}
jQuery在使用ajax的时候会在header中加入X-Requested-With,值为:XMLHttpRequest,filter中 判断是jQuery的ajax请求时就把字符编码设为utf8,这样可以解决post提交中的中文乱码问题,不需要在代码中设置 request.setCharacterEncoding("UTF-8");
对于get方式的中文乱码问题,建议不使用get方式提交中文,统统改为post ^-^
url: "3.jsp",
type: "post",
data: {name:"中文"},
beforeSend: function(XMLHttpRequest){
XMLHttpRequest.setRequestHeader("RequestType", "ajax");
alert("开始");
},
success: function(data, textStatus){
alert(data);
},
error: function(XMLHttpRequest, textStatus, errorThrown){
alert("错误:" + textStatus);
},
complete: function(XMLHttpRequest, textStatus){
alert("完成:" + textStatus);
}
});
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest) request;
if (req.getHeader("RequestType") != null && req.getHeader("RequestType").equalsIgnoreCase("ajax"))) {
request.setCharacterEncoding("utf-8");
} else {
request.setCharacterEncoding("gbk");
}
chain.doFilter(request, response);
}
发表评论
-
resin3.1配置说明
2010-12-14 16:07 816<!-- Resin 3.1 配置文件. --> ... -
resion 2.x配置
2010-12-14 16:06 1141resion 2.x配置 1. <http h ... -
sqlserver 递归查询
2010-12-01 17:20 754WITH read_tree (id,department ... -
20个非常有用的Java程序片段
2010-08-31 22:58 1354下面是20个非常有用的Java程序片段,希望能对你有用。1. ... -
IE注册表设置安全项
2010-07-30 17:16 2227Windows安全设置之注册表项在IE4.0以上的版本中,IE ... -
AD、CA、SSL,绑定keystore
2010-04-12 22:37 2615本文原文出处:http://blog.csdn.net/fre ... -
理解REST软件架构(转)
2010-01-01 23:47 834一种思维方式影响了软件行业的发展。REST软件架构是当今世界上 ... -
数据整合_SP
2009-12-18 14:50 717CREATE OR REPLACE PACKAGE BODY ... -
屏蔽数据_SP
2009-12-18 14:46 697CREATE OR REPLACE PACKAGE BODY ... -
数据抽取_SP
2009-12-18 14:44 894CREATE OR REPLACE PACKAGE BODY ... -
合并清洗
2009-12-18 14:41 708CREATE OR REPLACE PACKAGE BODY ... -
数据清洗_sp
2009-12-18 14:39 733CREATE OR REPLACE PACKAGE BODY ... -
test_help_sp
2009-12-18 08:24 687CREATE OR REPLACE PACKAGE BODY ... -
数据清洗2
2009-12-18 08:23 778create or replace package body ... -
数据清洗3
2009-12-18 08:22 798CREATE OR REPLACE PACKAGE BODY ... -
dwr reverse-ajax 实例解析(初步认识)
2009-10-30 15:20 974在网上找了一个老外写的dwr reverse-ajax的例子 ... -
java反射
2009-10-17 21:46 946Reflection 是Java被视为动态(或准动态)语言 ... -
oracle sql
2009-09-23 10:29 603select * from PDS_DELIVERY_REQU ... -
开闭原则 思考(转)
2009-09-17 12:56 820开闭原则的定义 Software entities shou ... -
oracle函数
2009-09-16 23:38 982oracle时间函数 相信很多人都有过统计某些数据的经历,比 ...
相关推荐
Ajax使用POST提交中文乱码问题.docx
需要对webconfig修改,主要是要修改页面编码格式为utf-8
解决ajax异步提交后台取值中文乱码问题,提供两种解决方法
在用jquery处理html5的应用的时候,一直在firefox下测试都正常,用户用pad访问的时候说有乱码,自己试验了下果然,后发现chrome和ie内核下都是有此问题,此问题设置了页面属性为utf-8时候,只有firefox是传的charset...
今天终于解决了AJAX的中文乱码问题,写篇文章来帮助一下有同样问题的朋友们。我的开发环境:XP, eclipse,使用GB18030编码。 当遇到这个问题时,到网上去查了好多文章,提到几种解决方案,如:全站UTF-8编码;请求头...
引言: 在JQuery的Ajax POST请求中,进行请求,其中的中文在后台,显示为乱码,该如何解决呢? 问题的引入: 代码如下: var regid = $(‘#oregion’).combobox(‘getValue’); //var sname = $(‘#sname’).val(); ...
AJAX在Post中文的时候乱码的解决方法
ajax中使用javascript的send方法post参数。当用set方法是会出现中午乱码的问题,该文档说的post方法很好的解决了该问题,具体用法见文档
php+Ajax解决了post与get中文乱码的问题 后台页面可以结合mysql使用,以达到相应目的
AJAX中文问题分为两大类: 1)发送路径中的参数有中文,在服务器段接收参数值是乱码 例如: var url=”a.jsp?name=小李”; xmlHTTP.open (“post”,url,true); 解决办法: 利用javascript的提供的escape()或...
下面总结了在不同编程语言中出现ajax中文乱码的各种解决办法,下面有需要的朋友可参考一下
用AJAX来GET回一个页面时,RESPONSETEXT里面的中文多半会出现乱码,这是因为xmlhttp在处理返回的responseText的时候,是把resposeBody按UTF-8编码进解码考形成的,如果服务器送出的确实是UTF-8的数据流的时候汉字会...
ajax乱码解决总结 第一,javascript沿用java的字符处理方式,内部是使用unicode来处理所有字符的, 第二,utf-8是每个汉字(unicode字符)用3个字节来存储。 第三,用utf-8来send数据是不会出现乱码的,是后台程序...
最近在做一个项目,遇到AJAX中文乱码问题,经过一个下午的努力终于完美... AJAX的中文乱码可以大概分为两中,第一种是向服务器端发送中文参数时(xmlhttp.open(“getpost”,url,true)),服务器端接收到的为乱码,这个也
以前在新浪博客写过js调用AJAX时Get和post的乱码解决办法,但是使用js代码比较繁琐,我们在使用ajax进行数据交互时可以使用js的一个成熟框架—jQuery。 一个网站的设计,不管是注册登录还是分页查找,都需要提交参数...
在使用"get"时,抓取的页面最后加上编码类型,在使用post时用vbscript解决了编码问题,具体实现如下,有类似情况的朋友可以参考下哈
主要介绍了JQuery的Ajax中Post方法传递中文出现乱码的解决方法,较为深入的分析了Ajax的post方法出现乱码的原因,以及具体的解决方法,需要的朋友可以参考下
今天遇到一个问题,有关ajax请求中传输中文,遇到乱码的问题。 如下代码: 代码如下:function UpdateFolderInfoByCustId(folderId, folderName, custId) { $.ajax({ type: “Post”, contentType: “application/...