`
JavaCrazyer
  • 浏览: 2990750 次
  • 性别: Icon_minigender_1
  • 来自: 河南
社区版块
存档分类

AJAX中GET和POST方式乱码解决方案

阅读更多

GET方式
页面:
 var tuiName=document.getElementById('demo_tempaltename').value;
 var url="card.do?method=findTableUiDictByUiname&tuiname="+tuiName;
 createXmlHttp();                        //创建XmlHttpRequest对象
 xmlHttp.onreadystatechange = writeMsg;
 xmlHttp.open("GET", url, true);
 xmlHttp.send(null);
服务器端:
String uiname  = new String(request.getParameter("tudname").getBytes("ISO-8859-1"), "GBK");



POST方式
页面:
    var tuiName=document.getElementById('demo_tempaltename').value;
    var querystring=encodeURI(encodeURI("method=findTableUiDictByUiname&tuiname="+tuiName));
    var url="card.do";
    createXmlHttp();                        //创建XmlHttpRequest对象
    xmlHttp.onreadystatechange = writeMsg;
    xmlHttp.open("POST", url, true);
    xmlHttp.setRequestHeader("content-length",querystring.length);
    xmlHttp.setRequestHeader("Connection", "close");
    xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    xmlHttp.send(querystring);
服务器端:
String uiname =URLDecoder.decode(request.getParameter("tuiname"),"UTF-8");

 

实践证明,这两种方式完全能够解决AJAX乱码问题

5
3
分享到:
评论
5 楼 JavaCrazyer 2011-05-07  
ForgiDaved 写道
  第二种两次encodeURI不单单是对AJAX有效,普通的表单提交也是很有效的。哈哈 我一直是用这个,乐此不疲

恩,的确是
4 楼 ForgiDaved 2011-05-07  
  第二种两次encodeURI不单单是对AJAX有效,普通的表单提交也是很有效的。哈哈 我一直是用这个,乐此不疲
3 楼 yu499819 2011-04-28  
JavaCrazyer 写道
yu499819 写道
弱弱问一下普通提交怎么解决中文乱码?<form><input type="submit" /></form>

普通提交就没有这么麻烦了,保证不乱码的前提是项目编码,页面编码,以及编码过滤器中的编码要完全一致就OK

哦  谢谢LZ,有空了去试试。。
2 楼 JavaCrazyer 2011-04-28  
yu499819 写道
弱弱问一下普通提交怎么解决中文乱码?<form><input type="submit" /></form>

普通提交就没有这么麻烦了,保证不乱码的前提是项目编码,页面编码,以及编码过滤器中的编码要完全一致就OK
1 楼 yu499819 2011-04-28  
弱弱问一下普通提交怎么解决中文乱码?<form><input type="submit" /></form>

相关推荐

    js调用AJAX时Get和post的乱码解决方法

    在使用"get"时,抓取的页面最后加上编码类型,在使用post时用vbscript解决了编码问题,具体实现如下,有类似情况的朋友可以参考下哈

    ajax中文乱码如何解决

    今天终于解决了AJAX的中文乱码问题,写篇文章来帮助一下有同样问题的朋友们。我的开发环境:XP, eclipse,使用GB18030编码。 当遇到这个问题时,到网上去查了好多文章,提到几种解决方案,如:全站UTF-8编码;请求头...

    php+Ajax(GET&POST)完美实例

    php+Ajax解决了post与get中文乱码的问题 后台页面可以结合mysql使用,以达到相应目的

    jQuery调用AJAX时Get和post公用的乱码解决方法实例说明

    以前在新浪博客写过js调用AJAX时Get和post的乱码解决办法,但是使用js代码比较繁琐,我们在使用ajax进行数据交互时可以使用js的一个成熟框架—jQuery。 一个网站的设计,不管是注册登录还是分页查找,都需要提交参数...

    AJAX在Post中文的时候解决乱码的方法

    用AJAX来GET回一个页面时,RESPONSETEXT里面的中文多半会出现乱码,这是因为xmlhttp在处理返回的responseText的时候,是把resposeBody按UTF-8编码进解码考形成的,如果服务器送出的确实是UTF-8的数据流的时候汉字会...

    ajax乱码解决汇总

    ajax乱码解决总结 第一,javascript沿用java的字符处理方式,内部是使用unicode来处理所有字符的, 第二,utf-8是每个汉字(unicode字符)用3个字节来存储。 第三,用utf-8来send数据是不会出现乱码的,是后台程序...

    有关Ajax中get和post的使用问题

    使用get遇到的问题: 1.问题一. 缓存:当每次访问的url相同,客户端直接读取本地缓存里面的内容,即使后台数据变化前台也不会有变化; 解决方法:在?后面链接一个num=【随机数Math.random()】或者num=...post方式,

    JQuery的Ajax中Post方法传递中文出现乱码的解决方法

    需要用到Ajax,之前我在用GET方式传递中文参数时,只需要在后台程序中设置页面编码为GB2312即中文能正常显示,可是这次由于表单项目较多,不适合用GET方式传递,只能用POST方式,但发现后台程序中设置编码为GB2312时...

    AJAX在Post中文的时候乱码的解决方法

    ******************************************** 看到的说明原文如下: 用AJAX来GET回一个页面时,RESPONSETEXT里面的中文多半会出现乱码,这是因为xmlhttp在处理返回的responseText的时候,是把resposeBody按UTF-8...

    ajax中get和post的说明及使用与区别

    对付乱码我都是用过滤器做字符编码过滤的,Get方法过滤器监听不到,所以我一直喜欢使用Post方法,下面对Ajax Get和Post方法做一对比,需要了解的朋友可以 参考下

    AJAX中文乱码PHP中完美解决方法

    最近在做一个项目,遇到AJAX中文乱码问题,经过一个下午的努力终于完美... AJAX的中文乱码可以大概分为两中,第一种是向服务器端发送中文参数时(xmlhttp.open(“getpost”,url,true)),服务器端接收到的为乱码,这个也

    ajax请求get与post的区别总结

    get传送数据要经过encodeURIComponent编码,防止乱码。 get方式,服务器端用Request.QueryString获取变量的值; post方式,服务器端用Request.Form获取提交的数据; 两种方式的参数都可以用Request来获得。

    在Ajax中使用get和post所遇到的问题及解决办法

    使用get遇到的问题: 1.问题一. 缓存:当每次访问的url相同,客户端直接读取本地缓存里面的内容,即使后台数据变化前台...测试结果:通过使用Chrome测试,结果get的两种问题,都已经得到了解决 使用post遇到的问题:

    ajax异步请求小结

    具体描述ajax的获取,ajax属性,参数设置,编程步骤,缓存问题,get/post乱码问题,以及应用场景的阐述 onreadystatechange 绑订事件处理函数(处理readystatechange事件)。 注:当readyState属性值发生了任何的改变...

    j2ee21:ajax01:get提交、post提交(完成用户名搜索),两者的区别(中文乱码问题、缓存问题)

    NULL 博文链接:https://1601844782.iteye.com/blog/2275595

    ajax的两种提交方式(get/post)和两种版本

    最近比较闲,就把以前用过的技术串一下做个手札,方便以后自己...get/post两种提交方式,但get提交容易乱码,一定多加注意 jsp页面: 代码如下: &lt;&#37;@ page language=”java” import=”java.util.*” pageEncodi

    jQuery中$.get、$.post、$.getJSON和$.ajax的用法详解

    当我们用javascript写ajax程序写得很“开心”的时候,突然有人告诉你有一种东西叫jquery,它会告诉你不直接和HttpRequest是多么的快乐,同时你再也不需要再烦恼纠结的ajax乱码问题,更幸福的是你的js代码将大大地...

Global site tag (gtag.js) - Google Analytics