十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这篇文章给大家分享的是有关JQuery ajaxSubmit提交中文乱码怎么办的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
创新互联专注为客户提供全方位的互联网综合服务,包含不限于成都网站设计、成都网站制作、盂县网络推广、微信小程序定制开发、盂县网络营销、盂县企业策划、盂县品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联为所有大学生创业者提供盂县建站搭建服务,24小时服务热线:18980820575,官方网址:www.cdcxhl.com
一般人使用是
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提交中文乱码怎么办”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!