jquery.ajax的url中传递中文乱码问题的解决方法


Posted in Javascript onFebruary 07, 2014

JQuery

JQuery默认的contentType:application/x-www-form-urlencoded

这才是JQuery正在乱码的原因,在未指定字符集的时候,是使用ISO-8859-1

ISO8859-1,通常叫做Latin-1。Latin-1包括了书写所有西方欧洲语言不可缺少的附加字符。

JQuery的Ajax根本没有考虑到国际化的问题,使用了欧洲的字符集,所以才引起了传递中文出现乱码的问题。

而我们的UTF-8则可以解决这一问题。

最终指需要修改JQuery的代码,显式声明contentType使用utf-8字符集,即可解决GB2312中文传递的问题。

1. 修改JQuery代码

只需要简单的将JQuery的代码加以修改,加上charset=UTF-8就可以了,这样不需要改变改什么web.config或什么在页面中改编码什么的了,也不需要用escapc(str)再在服务端解码。英文怎么传递,中文也怎么传递。

修改用到的jquery文件:jquery-1.4.4.min.js

ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded;charset=UTF-8",processData:true,async:true,xhr:function(){return new E.XMLHttpRequest}

2. Js代码:

function confirmcommit(){
    var wlCompany = $("#wlCompany").val();//这里含有中文
    var wlId = $("#wlId").val();
    var proposer = $("#proposer").val();
    if(confirm("确认要换货吗")){
$.ajax({
type:'POST',
url:'${pageContext.request.contextPath}/returnGoods/confrimExchangeGoods.do',
data:'wlCompany='+wlCompany+'&wlId='+wlId+'&proposer='+proposer, //直接传值
dataType:'text',
error:function(){
    alert("JQuery AJAX Error!");      
},
success:function(msg){
    alert(msg);
    return;
    if(msg=='换货成功'){
 document.location="${pageContext.request.contextPath}/orderItem/queryProduceItem.do?orderBusType="+${orderBusType};
    }
}
});
     }
 }

3 .Java代码:
public ActionForward confrimExchangeGoods(ActionMapping mapping,
ActionForm form, HttpServletRequest request,
HttpServletResponse response) throws Exception {
log.info("确认换货 confrimExchangeGoods start...............");
response.setCharacterEncoding("UTF-8"); //这里要设置一下
String wlCompany = request.getParameter("wlCompany");
String wlId = request.getParameter("wlId");
String proposer = request.getParameter("proposer");
     .....
}
Javascript 相关文章推荐
javascript中巧用“闭包”实现程序的暂停执行功能
Apr 04 Javascript
jQuery中$.fn的用法示例介绍
Nov 05 Javascript
超详细的javascript数组方法汇总
Nov 21 Javascript
体验jQuery和AngularJS的不同点及AngularJS的迷人之处
Feb 02 Javascript
简单学习vue指令directive
Nov 03 Javascript
基于jquery二维码生成插件qrcode
Jan 07 Javascript
jQuery实现链接的title快速出现的方法
Feb 20 Javascript
深入学习TypeScript 、React、 Redux和Ant-Design的最佳实践
Jun 17 Javascript
layer.open回调获取弹出层参数的实现方法
Sep 10 Javascript
这样回答继承可能面试官更满意
Dec 10 Javascript
Javascript异步编程async实现过程详解
Apr 02 Javascript
80行代码写一个Webpack插件并发布到npm
May 24 Javascript
jquery ajax传递中文参数乱码问题及解决方法说明
Feb 07 #Javascript
Ajax提交与传统表单提交的区别说明
Feb 07 #Javascript
JQUERY 设置SELECT选中项代码
Feb 07 #Javascript
jquery操作select详解(取值,设置选中)
Feb 07 #Javascript
jquery select 设置默认选中的示例代码
Feb 07 #Javascript
jquery 淡入淡出效果的简单实现
Feb 07 #Javascript
通过遮罩层实现浮层DIV登录的js代码
Feb 07 #Javascript
You might like
VIM中设置php自动缩进为4个空格的方法详解
2013/06/14 PHP
支持中文、字母、数字的PHP验证码
2015/05/04 PHP
php文件上传你必须知道的几点
2015/10/20 PHP
PHP Mysqli 常用代码集合
2016/11/12 PHP
JavaScript获取鼠标移动时的坐标(兼容IE8、chome谷歌、Firefox)
2014/09/13 Javascript
详解Javascript 装载和执行
2014/11/17 Javascript
jQuery自制提示框tooltip改进版
2016/08/01 Javascript
简单理解js的prototype属性及使用
2016/12/07 Javascript
Bootstrap table使用方法详细介绍
2016/12/09 Javascript
js实现倒计时关键代码
2017/05/05 Javascript
javascript 判断用户有没有操作页面
2017/10/17 Javascript
仿iPhone通讯录制作小程序自定义选择组件的实现
2019/05/23 Javascript
Vue Render函数原理及代码实例解析
2020/07/30 Javascript
JavaScript中arguments的使用方法详解
2020/12/20 Javascript
[38:31]完美世界DOTA2联赛PWL S3 Magma vs GXR 第一场 12.13
2020/12/17 DOTA
python抓取最新博客内容并生成Rss
2015/05/17 Python
python+matplotlib绘制简单的海豚(顶点和节点的操作)
2018/01/02 Python
用Python进行简单图像识别(验证码)
2018/01/19 Python
解决Django删除migrations文件夹中的文件后出现的异常问题
2019/08/31 Python
pymysql模块的使用(增删改查)详解
2019/09/09 Python
python cv2读取rtsp实时码流按时生成连续视频文件方式
2019/12/25 Python
教你使用Sublime text3搭建Python开发环境及常用插件安装另分享Sublime text3最新激活注册码
2020/11/12 Python
python 删除系统中的文件(按时间,大小,扩展名)
2020/11/19 Python
纯CSS3实现漂亮的input输入框动画样式库(Text input love)
2018/12/29 HTML / CSS
Html5上传图片 移动端、PC端通用代码
2016/06/08 HTML / CSS
一个基于canvas的移动端图片编辑器的实现
2020/10/28 HTML / CSS
美国转售二手商品的电子商务平台:BLINQ
2018/12/13 全球购物
营销人才自我鉴定范文
2013/12/25 职场文书
蔬菜基地的创业计划书
2014/01/06 职场文书
一年级数学教学反思
2014/02/01 职场文书
校优秀毕业生主要事迹
2014/05/26 职场文书
领导班子对照检查材料
2014/09/22 职场文书
工作疏忽检讨书500字
2014/10/26 职场文书
求职推荐信范文
2015/03/27 职场文书
详解MySQL的Seconds_Behind_Master
2021/05/18 MySQL
Python中使用ipython的详细教程
2021/06/22 Python