在jQuery中Ajax的Post提交中文乱码的解决方案(转)

引言: 在jQuery的Ajax POST请求中,进行请求,其中的中文在后台,显示为乱码,该如何解决呢?

问题的引入:

var regid = $(‘#oregion‘).combobox(‘getValue‘);

//var sname = $(‘#sname‘).val();

var sname = encodeURI($(‘#sname‘).val(),"UTF-8");

if(regid!=""&&regid!=‘undefined‘){

$.ajax({

async: true,

type : "POST",

dataType : "json",

url : "<%=request.getContextPath() %>/secretary/isHaSUSEr.do?regid="+regid+"&sname="+sname,

success : function(data) {

if(data.mes!=""&&data.mes!=null){

$.messager.alert(‘Warning‘,data.mes);

return false;

}

}

});

}

}

以上的代码在FF/Chrome中,可以正常传递中文,但是在IE下,则存在问题,在后台输出的信息为乱码。

问题尝试办法:

1.  设置了  contentType: "text/plain; charset=utf-8",  问题依然存在

2.  重新检查了ajax代码所在的jsp页面,皆为使用utf-8,但是问题依然存在

3.  在后台的java代码中,强制使用utf-8、gbk、gb2312的编码转换,  问题依然存在   经过分析,判断其可能与浏览器或者JQuery中的内容传输有关,目前也无法准确的确定。

解决的办法:       前段:encodeURI($(dom).val(), "UTF-8");      使用encodeURI进行编码

后端Java代码:

URLDecoder.decode(inputStr,"UTF-8"):  后端代码针对前段传递过来的字符串,进行解码。

总结:       最后就可以针对Ajax Post请求传递过来的字符串信息,就可以正常显示中文了。

在jQuery中Ajax的Post提交中文乱码的解决方案(转),布布扣,bubuko.com

时间: 2024-10-14 21:46:36

在jQuery中Ajax的Post提交中文乱码的解决方案(转)的相关文章

JQuery中Ajax的Post提交中文乱码的解决方案(转)

引言: 在JQuery的Ajax POST请求中,进行请求,其中的中文在后台,显示为乱码,该如何解决呢? 问题的引入: var regid = $('#oregion').combobox('getValue');            //var sname = $('#sname').val();            var sname = encodeURI($('#sname').val(),"UTF-8");            if(regid!=""

JQuery中Ajax的Post提交中文乱码的解决方案

出自:http://m.blog.csdn.net/blog/blueheart20/26370023 引言: 在JQuery的Ajax POST请求中,进行请求,其中的中文在后台,显示为乱码,该如何解决呢? 问题的引入: var regid = $('#oregion').combobox('getValue');             //var sname = $('#sname').val();             var sname = encodeURI($('#sname')

JQuery在Ajax的Post提交中国乱码的解决方案

介绍: 在JQuery的Ajax POST要求,一个要求.中国的背景之中,乱码,如何解决呢? 问题简介: var regid = $('#oregion').combobox('getValue'); //var sname = $('#sname').val(); var sname = encodeURI($('#sname').val(),"UTF-8"); if(regid!=""&&regid!='undefined'){ $.ajax({

JQuery AJAX提交中文乱码的解决方案

?JQuery是一个非常优秀的框架,在特定场合下使用JQuery提交数据,相当的方便快捷. 但是,在处理一个GB2312编码的网站AJAX提交时,中文数据却成了乱码. 现象如下: 1)在Firefox下,处理页面的编码为gb2312,提交数据没有问题,中文能够正确解析: 2)在IE8下,处理页面的编码为gb2312,提交中文数据出现乱码. 无论是$.post还是$.ajax,抑或$.ajaxSubmit(来自于Form插件),在之前的UTF-8编码的网站都没有出现过任何问题, 看来是由于提交数据

jQuery 中 ajax 提交数据应用的一个小demo

举一个jquery中ajax的应用小 demo 便于以后的更多项目拓展 ,这里要注意的是保存的文件名问题 ... ajax02.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> </head> <body> <div id="form&qu

jQuery的ajax的form提交方法应用

1.如果不用ajax的form提交,就必须把表单的每一条数据进行获取,并提交给action进行处理.这样做比较麻烦,现在用了jQuery的easyui,使用封装好的ajax的form提交.脚本代码如下: //提交表单 function sysusersave(){ if($.formValidator.pageIsValid()){//校验表单输入信息是否合法 //使用jquery的ajax from提交,指定from的id和回调方法,提交的url使用提from中的action,参数为空,传递J

jQuery中ajax的使用与缓存问题的解决方法

jQuery中ajax的使用与缓存问题的解决方法 1:GET访问 浏览器 认为 是等幂的就是 一个相同的URL 只有一个结果[相同是指 整个URL字符串完全匹配]所以 第二次访问的时候 如果 URL字符串没变化 浏览器是 直接拿出了第一次访问的结果 POST则 认为是一个 变动性 访问 (浏览器 认为 POST的提交 必定是 有改变的) 防止 GET 的 等幂 访问 就在URL后面加上 ?+new Date();,[总之就是使每次访问的URL字符串不一样的] 设计WEB页面的时候 也应该遵守这个

JQuery中Ajax的操作

Java软件开发中,后台中我们可以通过各种框架,像SSH等进行对代码的封装,方便我们对Java代码的编写,例如,Struts,SpringMVC对从前台到action的流程进行封装控制,使我们只需要进行一些简单配置就可以实现:而Spring进行了对各种对象的管理进行封装,提供了AOP编程的方式,大大方便了我们:而Hibernate和IBatis则是对JDBC代码进行封装,不需要我们每次都写那些重复而繁杂的JDBC代码. 前台呢,对于页面一些效果,验证等,我们都是通过JavaScript语言进行完

妥善的ajax跨域提交post请求的解决方案,结合PHP与jquery

开发背景: 在开发中采用了一个新的架构,将大部分客户的留言功能集成到一个公共API提交保存,采用不同的用户名区分,供客户查询自己网站的留言,这样节约了客户网站的资源,也提升了维护性. 那么在提交时不能采用直接的post提交,否则会产生跳转,使访客混乱,所以采用ajax提交留言内容至公共服务器:http://wx.igooda.cn/index.php/messagesave,但尝试后发现不能提交post请求,百度后查询结果是跨域只能是get请求,这对留言内容多的来说,是不可行的.还有一种解决方案