亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

關于ajax 傳值為什么一直輸出的是error函數中的值?

關于ajax 傳值為什么一直輸出的是error函數中的值?

嚕嚕噠 2018-08-02 13:10:56
$(function(){            var str="0";            setInterval(function(){                $.ajax({                    url : 'action.php',                    type:'post',                    data:str,                    success:function(data){                        console.log(data);                    },                    error:function(){                        console.log(3);                    },                    dataType:'json'                });            },3000);        });頁面小工具中檢查一直輸出 3 ,從不輸出data ,這是為什么?補充:后臺是 <?php     $str=123;     return $str;
查看完整描述

1 回答

?
紅顏莎娜

TA貢獻1842條經驗 獲得超13個贊

1. dataType錯誤

 

   類型錯誤:后臺返回的dataType類型和前臺寫的不一致會跳入error

 

   格式錯誤:jquery1.4之后對json的格式要求非常嚴格,json格式錯誤也會跳入error.{"test":1} 注意格式

 

  有時,在不需要返回值的情況下,扔按模板格式,設置了dataType:"json",參數;這時候,ajax傳值正確時,出現200返回成功狀態下報錯的特殊情況。

 

2. async請求同步異步問題

 

    async默認是true(異步請求),如果想一個Ajax執行完后再執行另一個Ajax, 需要把async=false

 

    例如,你用post請求傳值到另一個頁面后臺,但是頁面一加載你的ajax就已經執行過了,傳值接收是在后臺才完成的,這時候就請求不到數據,所以可以考慮把ajax請求改為同步試試。

 

3. data不能不寫

 

   data為空也一定要傳"{}";不然返回的是xml格式的。并提示parsererror. data:"{}"

 

   parsererror的異常和Header 類型也有關系。及編碼header('Content-type: text/html; charset=utf8');

 

4. 傳遞的參數

 

    必須是ajax支持的編碼格式

 

5. URL路徑問題

 

    路徑不能有中文


查看完整回答
反對 回復 2018-08-20
  • 1 回答
  • 0 關注
  • 1067 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號