• 企业400电话
  • 网络优化推广
  • AI电话机器人
  • 呼叫中心
  • 全 部 栏 目

    网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    如何解决JQuery ajaxSubmit提交中文乱码
    POST TIME:2021-10-18 06:11

    一般人使用是

    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.form.js的ajaxSubmit和ajaxForm的使用
    • jQuery ajaxSubmit 实现ajax提交表单局部刷新
    • jQuery form插件之ajaxForm()和ajaxSubmit()的可选参数项对象
    • jQuery使用ajaxSubmit()提交表单示例
    • jquery ajaxSubmit 异步提交的简单实现
    • jquery的ajaxSubmit()异步上传图片并保存表单数据演示代码
    • Jquery ajaxsubmit上传图片实现代码
    • 如何理解jQuery中的ajaxSubmit方法
    上一篇:JQuery ajax返回JSON时的处理方式 (三种方式)
    下一篇:JQuery ajax 返回json时出现中文乱码该如何解决
  • 相关文章
  • 

    关于我们 | 付款方式 | 荣誉资质 | 业务提交 | 代理合作


    © 2016-2020 巨人网络通讯

    时间:9:00-21:00 (节假日不休)

    地址:江苏信息产业基地11号楼四层

    《增值电信业务经营许可证》 苏B2-20120278

    X

    截屏,微信识别二维码

    微信号:veteran88

    (点击微信号复制,添加好友)

     打开微信