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 相关文章推荐
一个可绑定数据源的jQuery数据表格插件
Jul 17 Javascript
javascript:文字不间断向左移动的实例代码
Aug 08 Javascript
javascript打印html内容功能的方法示例
Nov 28 Javascript
全面兼容的javascript时间格式化函数(比较实用)
May 14 Javascript
js函数与php函数的区别实例浅析
Jan 12 Javascript
Bootstrap富文本组件wysiwyg数据保存到mysql的方法
May 09 Javascript
jQuery插件easyUI实现通过JS显示Dialog的方法
Sep 16 Javascript
关于JavaScript和jQuery的类型判断详解
Oct 08 Javascript
jQuery监听文件上传实现进度条效果的方法
Oct 16 Javascript
微信小程序使用request网络请求操作实例
Dec 15 Javascript
vue.js input框之间赋值方法
Aug 24 Javascript
vue实现将一个数组内的相同数据进行合并
Nov 07 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
apache+php+mysql安装配置方法小结
2010/08/01 PHP
微博短链接算法php版本实现代码
2012/09/15 PHP
hadoop常见错误以及处理方法详解
2013/06/19 PHP
兼容各大浏览器带关闭按钮的漂浮多组图片广告代码
2014/06/05 PHP
PHP中使用addslashes函数转义的安全性原理分析
2014/11/03 PHP
PHP中应该避免使用同名变量(拆分临时变量)
2015/04/03 PHP
php提交表单时保留多个空格及换行的文本样式的方法
2017/06/20 PHP
Highslide.js是一款基于js实现的网页中图片展示插件
2020/03/30 Javascript
070823更新的一个[消息提示框]组件 兼容ie7
2007/08/29 Javascript
js如何获取file控件的完整路径具体实现代码
2013/05/15 Javascript
Jquery attr("checked") 返回checked或undefined 获取选中失效
2013/10/10 Javascript
JavaScript 数组详解
2013/10/10 Javascript
jquery增加时编辑jqGrid(实例代码)
2013/11/08 Javascript
轻松学习jQuery插件EasyUI EasyUI创建CRUD应用
2015/11/30 Javascript
通过原生JS实现为元素添加事件的方法
2016/11/23 Javascript
Web前端框架Angular4.0.0 正式版发布
2017/03/28 Javascript
详解如何在NodeJS项目中优雅的使用ES6
2017/04/22 NodeJs
angularJS1 url中携带参数的获取方法
2018/10/09 Javascript
Python 命令行非阻塞输入的小例子
2013/09/27 Python
Python入门篇之数字
2014/10/20 Python
全面理解Python中self的用法
2016/06/04 Python
python实现批量监控网站
2016/09/09 Python
python中WSGI是什么,Python应用WSGI详解
2017/11/24 Python
python自动发邮件库yagmail的示例代码
2018/02/23 Python
django 使用 request 获取浏览器发送的参数示例代码
2018/06/11 Python
Python封装原理与实现方法详解
2018/08/28 Python
python的sorted用法详解
2019/06/25 Python
pytorch中的自定义数据处理详解
2020/01/06 Python
浅谈numpy中np.array()与np.asarray的区别以及.tolist
2020/06/03 Python
CSS超出文本指定宽度用省略号代替和文本不换行
2016/05/05 HTML / CSS
全球最大的服务市场:Fiverr
2017/01/03 全球购物
阿联酋航空官方网站:Emirates
2017/10/17 全球购物
软件测试有哪些?什么是配置项?
2012/02/12 面试题
贷款委托书范本
2014/04/08 职场文书
幼儿园家长安全责任书
2014/07/22 职场文书
关于antd tree 和父子组件之间的传值问题(react 总结)
2021/06/02 Javascript