jquery乱码与contentType属性设置问题解决方案


Posted in Javascript onJanuary 07, 2013

今天闲的无聊,把以前遗留的问题解决一下,比如让人头痛的Jquery乱码问题。其实这方面文章已经很多了,但全面解决各种问题的很少,今天总结一下,方便自己也方便大家。

原因很简单: 其实他的中文乱码就是因为contentType没有指定编码,对于不同Jquery的版本中这个地方有不同的设置,就拿我遇到的,jquery-1.6.1和jquery-1.8.3就有不同的定义。

解决办法:在jquery-1.6.1文件中,搜索'contentType' 然后在application/x-www-form-urlencoded后面加上; charset=UTF-8 最终变成contentType:"application/x-www-form-urlencoded; charset=UTF-8"即可。
这样通过post方法提交后会出现乱码的问题就可以完美解决。

如果还有乱码现象,只能说你接收页面的编码也有问题, 这是由于异步对象XMLHttpRequest在处理返回的responseText的时候,是按UTF-8编码进行解码的。所以post方式的话,必须把这个页面另存一下,将页面文件的编码改为 UTF-8 (请务必记住)。
jquery乱码与contentType属性设置问题解决方案 
没修改前,整个FROM表单数据全部为乱码状态,对于这种情况,大家按以上方法可以轻松解决。

以下是一些特别情况的问题总结,来源于网络:
JQuery Ajax提交出现中文乱码的解决办法2
前使用Jquery的时候一直没有发现,用Ajax提交的时候会出现乱码,我猜测可能是因为编码的原因

可能存在以下几点原因
1.HTML的编码不统一:如页面用的GB2312,好像JQuery对它支持不太好。以前我一直都是用UTF-8的,一直都没有发现;
2.文件的编码,这个不好在表面上看到,简体中文版的操作系统存的文本格式的文件默认是 GB2312,建议把文件换成UTF-8格式的
最简单的解决办法,把提交的中文文本用 JS的 escape 处理一下,就不会现出现乱码了。
如:

//保存数据 
$.ajax({ 
url:"/guide/savecomments.aspx" , 
type:"POST" , 
dataType:"json" , 
data:"Action=SaveComment&CommNickName=" +escape(CommNickName.val()) + "&CommContent=" +escape(CommContent.val()) + "&GuideID=" + GuideID.val() + "&ScoreLogType=<%=ScoreLogType %>", 
success:function(results){ 
alert(results.message);

-------------------------------------------------------------------------------
解决的办法上用js的编码函数encodeURIComponent(string)处理一下,把中文"王晓明"编码成"%E7%8E%8B%E6%99%93%E6%98%8E",就OK了。
顺便说一下,我的tomcat下的URIEncoding=UTF-8
-------------------------------------------------------------------------------
今天在使用jquery检测用户名的时候,对英文和数字的用户名检测正确,但是对中文的时候,检测出错,经过在网上查询一段时间,终于找到了原因,是乱码问题,解决方法:
1、只要在ajax中有数据提交时,如果页面编码不是utf-8的,都应该对提交的数据进行编码,js的编码函数为escape()
2、在服务器端页接收数据后进行解码,然后对数据进行相关的处理后再编码
3、返回到客户端后再解码
4、如果没有提交数据,而是直接从服务器端获取数据,那直接在服务器页面设置Response.Charset="gb2312"即可,不用再编码解码
vbscript中分别对应js中的escape()和unescape()函数 程序代码
-------------------------------------------------------------------------------
通过以下处理方式得到解决
传递参数的时候 对参数进行编码priceName="encodeURI(priceName)",也可以用encodeURIComponent();
服务器端无需做其他处理: String priceName = request.getParameter("priceName");
Javascript 相关文章推荐
如何制作浮动广告 JavaScript制作浮动广告代码
Dec 30 Javascript
jQuery往返城市和日期查询实例讲解
Oct 09 Javascript
JavaScript日期选择功能示例
Jan 16 Javascript
BootStrap实现鼠标悬停下拉列表功能
Feb 17 Javascript
JavaScript订单操作小程序完整版
Jun 23 Javascript
Node.js上传文件功能之服务端如何获取文件上传进度
Feb 05 Javascript
对VUE中的对象添加属性
Sep 18 Javascript
Node.js Buffer模块功能及常用方法实例分析
Jan 05 Javascript
javascript实现blob加密视频源地址的方法
Aug 08 Javascript
layer关闭弹出窗口触发表单提交问题的处理方法
Sep 25 Javascript
angular *Ngif else用法详解
Dec 15 Javascript
JS原生实现轮播图的几种方法
Mar 23 Javascript
jQuery插件开发基础简单介绍
Jan 07 #Javascript
jquery入门—数据删除与隔行变色以及图片预览
Jan 07 #Javascript
jquery入门—编写一个导航条(可伸缩)
Jan 07 #Javascript
jquery入门—访问DOM对象方法
Jan 07 #Javascript
jQuery.clean使用方法及思路分析
Jan 07 #Javascript
js获取height和width的方法说明
Jan 06 #Javascript
javascript时间自动刷新实现原理与步骤
Jan 06 #Javascript
You might like
mysql 的 like 问题,超强毕杀记!!!
2007/01/18 PHP
ajax取消挂起请求的处理方法
2013/03/18 PHP
php笔记之:php数组相关函数的使用
2013/04/26 PHP
什么情况下可以不写PHP的闭合标签“?&gt;”
2014/08/28 PHP
php格式化时间戳显示友好的时间实现思路及代码
2014/10/23 PHP
jQuery产品间断向下滚动效果核心代码
2014/05/08 Javascript
nodejs中简单实现Javascript Promise机制的实例
2014/12/06 NodeJs
JavaScript编程中的Promise使用大全
2015/07/28 Javascript
漫谈JS引擎的运行机制 你应该知道什么
2016/06/15 Javascript
JS滚动到指定位置导航栏固定顶部
2017/07/03 Javascript
es6+angular1.X+webpack 实现按路由功能打包项目的示例
2017/08/16 Javascript
JQuery选中select组件被选中的值方法
2018/03/08 jQuery
javaScript产生随机数的用法小结
2018/04/21 Javascript
vue中的$emit 与$on父子组件与兄弟组件的之间通信方式
2018/05/13 Javascript
15 分钟掌握vue-next响应式原理
2019/10/13 Javascript
基于JS实现操作成功之后自动跳转页面
2020/09/25 Javascript
基于Cesium绘制抛物弧线
2020/11/18 Javascript
详解Vue.js 可拖放文本框组件的使用
2021/03/03 Vue.js
[57:59]EG vs Secret 2018国际邀请赛淘汰赛BO3 第一场 8.22
2018/08/23 DOTA
python实现数通设备端口监控示例
2014/04/02 Python
python读取图片任意范围区域
2019/01/23 Python
python将图片转base64,实现前端显示
2020/01/09 Python
对Python中 \r, \n, \r\n的彻底理解
2020/03/06 Python
Python自动重新加载模块详解(autoreload module)
2020/04/01 Python
基于python实现音乐播放器代码实例
2020/07/01 Python
基于PyTorch中view的用法说明
2021/03/03 Python
美国家用电器和电子产品商店:Abt
2016/09/06 全球购物
英国综合网上购物商城:The Hut
2018/07/03 全球购物
护士专业推荐信
2013/11/02 职场文书
三严三实对照检查材料思想汇报
2014/09/28 职场文书
2015年初中教务处工作总结
2015/07/21 职场文书
初中毕业生感言
2015/07/31 职场文书
position:sticky 粘性定位的几种巧妙应用详解
2021/04/24 HTML / CSS
pytorch加载预训练模型与自己模型不匹配的解决方案
2021/05/13 Python
总结高并发下Nginx性能如何优化
2021/11/01 Servers
win11无法登录onedrive错误代码0x8004def7怎么办 ?
2022/04/05 数码科技