这里有新鲜出炉的 jQuery 示例,程序狗速度看过来!
jQuery 是一个兼容多浏览器的 javascript 框架,核心理念是 write less,do more(写得更少, 做得更多)。jQuery 在 2006 年 1 月由美国人 John Resig 在纽约的 barcamp 发布,吸引了来自世界各地的众多 JavaScript 高手加入,由 Dave Methvin 率领团队进行开发。
今天闲的无聊,把以前遗留的问题解决一下,比如让人头痛的 Jquery 乱码问题。其实这方面文章已经很多了,但全面解决各种问题的很少,今天总结一下,方便自己也方便大家。
让人头痛的 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 (请务必记住)。
没修改前,整个 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) 处理一下,把中文 "王晓明" 编码成 "王晓明",就 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");
来源: http://www.phperz.com/article/17/0422/281129.html