现象:使用ajax发送请求,因为后台PHP,使用了阿里的短信,后来返回类型object Object,在浏览器上看到是这样的返回格式:{msg:90,ok:ok}[1,#98978]。ajax返回值不好处理。{msg:90,ok:ok}这个是第三方短信返回值,去不掉。[1,#98978]这个才是自己后台要用到的返回值。
如果返回类型复杂,并且只是返回一个字段,此时可以用complete接受回调函数,data.responseText将返回结果作为String,在截取字符串即可。
解决方法:
<span style="white-space:pre"> </span>$.ajax({ type : "post", //提交方式 url : "../ss.php",//路径 async:true, dataType:"json", data : { "xxs":xx, "xx":xx, "xx":xx },//数据,这里使用的是Json格式进行传输 complete: function(data) {//返回数据根据结果进行相应的处理,无论请求成功还是失败,都会走这个方法的 var str=data.responseText;//将返回结果转成字符串,此时,以后台的标记“#”(自己定义,主要是截取字符串所用)为主 if(str.indexOf("#")>0){ var do=str.substr(str.indexOf("#")+1,18); window.location="xx.php?xx="+dd; }else{ alert("保存失败,请稍后重试"); } } }); //ajax_end
以上就是小编为大家带来的ajax返回object Object的快速解决方法全部内容了,希望大家多多支持~