現象:使用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的快速解決方法全部內容了,希望大家多多支持~