jquery $.post乱码怎么办?

jquery $.post乱码怎么办?

解决方法:

$.ajaxSetup({
  contentType: "application/x-www-form-urlencoded; charset=utf-8"
});
$.post("test.php", { name: "i5a6", time: "2pm" },
   function(data){
     process(data);
   }, "json");

或者使用:

$.ajax({
  url:url,
  type:"POST",
  data:data,
  contentType:"application/x-www-form-urlencoded; charset=utf-8",
  dataType:"json",
  success: function(){
    ...
  }
})

推荐使用第一种,不过也是根据自己的实际情况看的,有人推荐用 encodeURIComponent 做字符转换

(相关课程推荐:jQuery教程

总结一下ajax 提交数据乱码一些经验

为了避免乱码,可以做到以下几步

解决方法

1,保持编码的统一,包括文件编码,数据库编码,网页content-type编码

检查一下<meta http-equiv=”content-type” content=”text/html; charset=UTF-8″ />

建议中文都是用UTF-8,使用gbk/gb2312有可能会出现乱码

2,使用post来发送而不是get

get方法是会通过链接来传递参数,而且会自动urlEncode(编码),而各个浏览器编码的方式可能不太一样。使用post可以避免这种情况。

3,通过在js前端escape编码再发送,然后后台解码取得数据

这些可以在网上搜索

4,在全局设定contentType,指定编码

因为jquery ajax是使用utf-8来编码发送数据的,ie在发送时却没加上charset=utf-8,从而导致乱码(IE默认使用iso-8859-1编码)

复制代码 代码如下:

$.ajaxSetup({
 contentType: "application/x-www-form-urlencoded; charset=utf-8"
});
Image placeholder
前端答疑
未设置
  38人点赞

没有讨论,发表一下自己的看法吧

推荐文章
jquery easyui乱码怎么办?

jqueryeasyui乱码怎么办?之所以出现乱码是因为,我们在引入easyui以后,它里面的汉化包并没产生作用而汉化包没有发生作用的原因有:1.汉化包引入路径有问题,文件找不到404,这个很简单,只

HTML乱码怎么办?

HTML乱码原因1、不同编码内容混杂:HTML乱码是因为html编码问题照成(常见gb2312与utf-8两种编码内容同一时候存在照成)2、未设置HTML编码:3、使用记事本编辑html:有时使用记事

jquery序列化serialize()方法时中文乱码怎么解决?

原因:.serialize()自动调用了encodeURIComponent方法将数据编码了解决方法:调用decodeURIComponent(XXX,true);将数据解码如:varparams=j

Jquery load()乱码怎么解决?

Jqueryload()乱码怎么解决?如果用jQueryload方法加载的文档中包含中文字符,可能会引起乱码问题。要解决这个问题,方法1:所加载的文档本身应当采用UTF-8格式编码。在记事本中,默认的

jquery ajax提交数据乱码怎么解决?

为了避免乱码,可以做到以下几步解决方法1、保持编码的统一,包括文件编码,数据库编码,网页content-type编码检查一下建议中文都是用UTF-8,使用gbk/gb2312有可能会出现乱码2、使用p

jquery中文乱码怎么解决?

jquery中文乱码怎么解决?最近使用jQuery遇到中文乱码问题,其实他的中文乱码就是因为contentType没有指定编码,只需在jQuery.js中搜索‘contentType’然后在appli

jquery的url参数乱码怎么解决?

URL地址栏传递字符(中文、=、&)乱码解决办法1、使用encodeURI()方法encodeURI()方法可把字符串作为URI进行编码,转码之后就不会乱码,同时如果传递参数中包含&、=等特殊字符转码

jquery不兼容低版本ie浏览器怎么办?

jquery不兼容低版本ie浏览器怎么办?1、可以使用原生JS或者低版本的Jquery1.x版本。因为Jquery从2.x版本开始已经不再进行IE低版本(IE6、IE7、IE8)的兼容性处理。如果需要

jquery ie8不支持怎么办?

IE8不支持jQuery版本解决办法可以使用原生JS或者低版本的Jquery1.x版本,通过判断IE浏览器的版本来加载对应版本的jQuery。使用语句可在IE8模式下进行一些兼容操作。代码如下: 这样

ie不兼容jquery怎么办?

解决方法:1、可以使用原生JS或者低版本的Jquery1.x版本。因为Jquery从2.x版本开始已经不再进行IE低版本(IE6、IE7、IE8)的兼容性处理。如果需要兼容低版本的IE版本,建议使用原

脚本错误jQuery未定义怎么办?

脚本错误jQuery未定义怎么办?出现JQuery未定义这个错误的原因很简单,就是在引用JQuery的js文件时,顺序不对,jquery.js这个引用必须在最前面,不然就会出错。或者将使用了jQuer

jquery和jquery ui的区别?

jquery和jqueryui的区别?区别有:1、jQuery是一个js库,主要提供的功能是选择器,属性修改和事件绑定等等。 2、jQueryUI则是在jQuery的基础上,利用jQuery的扩展性,

css文件中文乱码怎么解决?

css文件中文乱码怎么解决?一、字体乱码:1、比如设置字体为宋体:font-family:’宋体’;但因此产生的一个问题是,如果CSS编码有误,会导致页面加载后CSS中的中文字体乱码。通常会采用对中文

jquery serialize()中文乱码

jqueryform表单.serialize()序列化后中文乱码问题原因及解决原因:.serialize()自动调用了encodeURIComponent方法将数据编码了解决方法:调用decodeUR

jquery获取url的参数乱码

jquery获取url的参数乱码//扩展方法获取url参数 $.getUrlParam=function(name){ varreg=newRegExp("(^|&)"+name+"=([^&]*)(

ant-design-vue按需加载出错怎么办?

ant-design-vue按需加载出错怎么办?按照官方文档引入antd时,到了按需加载那步出错了,提示errorin./node_modules/ant-design-vue/es/style/in

花2w培训前端,出来狂面20家,被拒,我该怎么办?

今天,一个在上海花2w培训前端的妹子向我诉苦,说她5个月刚培训出来,技术好差,2周时间,狂面20家公司,没有一家抛出橄榄枝。她自己说,感觉找不到工作了,能不能给我点建议?我大概问了她一些细节。这期培训

thinkphp加载不了css怎么办?

thinkphp加载不了css怎么办?如何解决?解决方法:1、项目入口文件index.php

IE浏览器页面显示不全怎么办?

快速修复浏览器方案(鉴于系统环境不同→请活学活用以下方法→根据具体情况决定做哪些)1、打开浏览器,点“工具”→“管理加载项”那里禁用所有可疑插件,或者你能准确知道没问题的保留。然后→工具→INTERN

css样式不兼容怎么办?

1、使用浏览器私有属性我们经常会在某个CSS的属性前添加一些前缀,比如-webkit-,-moz-,-ms-,这些就是浏览器的私有属性。为什么会出现私有属性呢?这是因为制定HTML和CSS标准的组织W

css right属性不生效怎么办?

cssright属性不生效怎么办?cssright属性不生效是因为元素的position属性值为static,解决方法是将元素的position属性的值改为relative、absolute、fixe

css图片在ie8中不显示怎么办?

css图片在ie8中不显示怎么办?css背景图片在ie8中不能显示是因为no-repeat前面缺少空格,添加一个空格,改成background:url(图片地址)no-repeat即可。代码:(相关课

link标签引入css不起作用怎么办?

link标签引入css不起作用怎么办?1、使用link标签引用CSS:2、link无效的问题:●原因多数是css路径写的不正确。路径分为相对路径和绝对路径。如果是相对路径要仔细检查路径是否和文件相对应

iis不加载css怎么办?

iis不加载css怎么办?解决方法:打开或关闭window功能中的Internet信息服务里的万维网服务=>常见HTTP功能=>静态内容选中后安装即可。

https无法加载css js资源怎么办?

https无法加载cssjs资源怎么办?在https的网站中引用http路径的js或css会导致不起作用,其形如:解决办法:将http:去掉,改为浏览器默认是不允许在HTTPS里面引用HTTP资源的,