当前位置: 首页 > 图文教程 > 网络编程 > Javascript > Jquery乱码的一次解决过程 图解教程

Javascript
JQuery 获取和设置Select选项的代码
jQuery ctrl+Enter shift+Enter实现代码
jQuery学习2 选择器的使用说明
jQuery学习3:操作元素属性和特性
jQuery学习4 浏览器的事件模型
jQuery学习5 jQuery事件模型
jQuery 学习6 操纵元素显示效果的函数
jQuery学习7 操作JavaScript对象和集合的函数
jQuery库与其他JS库冲突的解决办法
JavaScript Event事件学习第一章 Event介绍
JavaScript Event学习第二章 Event浏览器兼容性
JavaScript Event学习第三章 早期的事件处理程序
JavaScript Event学习第四章 传统的事件注册模型
JavaScript Event学习第五章 高级事件注册模型
JavaScript Event学习第六章 事件的访问
JavaScript Event学习第七章 事件属性
JavaScript Event学习第八章 事件的顺序
js png图片(有含有透明)在IE6中为什么不透明了
JavaScript 读取元素的CSS信息的代码
基于mootools的圆角边框扩展代码

Javascript 中的 Jquery乱码的一次解决过程 图解教程


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-02-27   浏览: 215 ::
收藏到网摘: n/a

今天小朋友写了个程式,出现乱码,将解决过程分享一下 为方便说明,将环境简化,vs.net 2003, jquery-1.3.2.js, web service调用

Untitled-1

Untitled-2

简单的请求,简单的响应,但是乱码产生了

Untitled-3

Why?

乱码之所以产生,原因很简单,无非就是编码表用错了,如传的是big5字符,接收却使用utf-8,或utf-8编码,却用GB2312解码。

好吧,先确认一下是否请求过程中产生的乱码

Untitled-4

那我发过去的是乱码吗?

Untitled-5

打开C:/tmp/下的test.txt

Untitled-6

这是什么编码,猜一猜?

Untitled-7

看来客户端没错,且正确地到了服务器端了,那应该是asp.net搞错了编码了,HttpRequest类里找下有没有相关的Encoding相关的属性

Untitled-8

Untitled-9

看看web.config吧

Untitled-10

测试一下修改成utf-8看看

Untitled-11

原因成功找到,看来就是客户端传utf-8,然后服务器端big5接收产生问题

不过这个专案不能这样解决,因为这个旧专案跑了很久了,改这里可能影响以前的其它程式,那就改客户端吧,设置请求属性为utf-8,让asp.net不迷茫

修改ajax请求代码,设定charset属性

Untitled-12

问题得以解决,不过最近也有在vs2005中使用jquery,没有发生乱码,可能是vs2005已经默认为utf-8了(有空再去找下是在哪里默认的,或那位TX告知一下)

vs.net2003默认是本机操作系统的编码,如big5,gb2312,因此常常发生乱码问题.

另,分享一个简单的文本文件的乱码查看方法.

Untitled-14

Untitled-15

对于一些不是以txt结尾的文本档(如aspx,cs),可以先将后缀改为txt,然后再打开IE看,否则IE会不认得,直接下载

图片太多,请网速慢的TX原谅~~