最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

如何解决JQuery ajaxSubmit提交中文乱码

来源:动视网 责编:小采 时间:2020-11-27 22:52:04
文档

如何解决JQuery ajaxSubmit提交中文乱码

如何解决JQuery ajaxSubmit提交中文乱码:一般人使用是 jQuery(form).ajaxSubmit({ url: ajaxsub.aspx?abc=test, type: post, dataType: json, success: data }); 分析:JQuery的AJAX提交,会将要提交的数据进行编码,使用encodeURIComponent在js中处理数据
推荐度:
导读如何解决JQuery ajaxSubmit提交中文乱码:一般人使用是 jQuery(form).ajaxSubmit({ url: ajaxsub.aspx?abc=test, type: post, dataType: json, success: data }); 分析:JQuery的AJAX提交,会将要提交的数据进行编码,使用encodeURIComponent在js中处理数据


一般人使用是

jQuery(form).ajaxSubmit({ 
url: "ajaxsub.aspx?abc=test",
type: "post", 
dataType: "json", 
success: data
});

分析:JQuery的AJAX提交,会将要提交的数据进行编码,使用encodeURIComponent在js中处理数据。因此,无论是 Firefox或者IE,提交的数据都是一致的,都是UTF-8编码后的数据。

查看Header,发现Entity中的Content-Type存在差异

在Firefox中,Content-Type指定了字符集为utf-8。

而IE里面却没有任何字符集指定,

显然,默认情况下,AJAX的异步提交的字符编码应该和网页本身保持一致,也就是说,Server端在没有发现显示的charset指定的情 况下,使用gb2312来解码数据(但是数据在提交前已经被UTF-8编码了),这就是为什么在IE下会出现乱码的根源,而在Firefox下,浏览器在 提交AJAX数据的时候,加上了charset的显示指定,导致Server端采用UTF-8来解码数据(正确解码)。

查阅JQuery的AJAX工具函数的说明,发现options中有一个指定content-type的参数

所以在提交的时候要指定编码类型

contentType: "application/x-www-form-urlencoded; charset=utf-8",

即如下

jQuery(form).ajaxSubmit({ 
url: "ajaxsub.aspx?abc=test", 
type: "post", 
dataType: "json", 
contentType: "application/x-www-form-urlencoded; charset=utf-8", 
success: data
});

以上内容给大家分享了如何解决JQuery ajaxSubmit提交中文乱码,希望对大家有所帮助。

文档

如何解决JQuery ajaxSubmit提交中文乱码

如何解决JQuery ajaxSubmit提交中文乱码:一般人使用是 jQuery(form).ajaxSubmit({ url: ajaxsub.aspx?abc=test, type: post, dataType: json, success: data }); 分析:JQuery的AJAX提交,会将要提交的数据进行编码,使用encodeURIComponent在js中处理数据
推荐度:
标签: 乱码 解决 怎么
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top