jQuery中文乱码完美解决方案 您所在的位置:网站首页 jquery的中文文档 jQuery中文乱码完美解决方案

jQuery中文乱码完美解决方案

2022-12-28 12:48| 来源: 网络整理| 查看: 265

jQuery中文乱码完美解决方案

最近使用jQuery遇到中文乱码问题,其实他的中文乱码就是因为contentType没有指定编码,只需在jQuery.js中搜索’contentType’

然后在application/x-www-form-urlencoded后面加上; charset=UTF-8

最终变成contentType:"application/x-www-form-urlencoded; charset=UTF-8"

问题搞定。

必要说明:

使用post方法会出现乱码,这是由于异步对象XMLHttpRequest在处理返回的responseText的时候,是按UTF-8编码进行解码的。所以post方式的话,必须把action.asp页另存为时,第三项的编码由 ANST 改为 UTF-8 (请务必记住).

---------------------------------------------------------------------------------------

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()函数 程序代码

-------------------------------------------------------------------------------

通过以下处理方式得到解决



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有