2017-01-01 32 views
0

Ajax響應我發送POST請求如何,提醒完整

$.ajax({ 
    type : "POST", 
    url : 'https://123.com/test.php', 
    data: {json: json, id: id, token: token, number: num}, 
    xhrFields: { 
       withCredentials: true 
      }, 
    complete : function(data){     
       alert("Status: " + data.responseText); 
    }, 
}); 

POST請求的工作,當我看着鉻控制檯,我可以看到的反應是「成功」,但我不能顯示它。

我已經tryed

data.responseText 

jQuery.parseJSON(data) 

JSON.stringify(data) 

我總是空的警告框後

回答

0

完全執行成功或錯誤回調是Ë xecuted。

成功

這個函數會得到兩個參數:從 服務器返回的數據,根據「的dataType」參數格式化,並描述狀態的字符串 。

完整

這個函數會得到兩個參數:XMLHttpRequest對象和 描述請求成功的類型的字符串。如果你有success替換complete

所以,你也有隻data更換data.responseText

試試下面一個

$.ajax({ 
    type : "POST", 
    url : 'https://123.com/test.php', 
    dataType: 'json', 
    data: {json: json, id: id, token: token, number: num}, 
    xhrFields: { 
       withCredentials: true 
      }, 
    success : function(data){     
       console.log(data); 
    }, 
}); 

如果您需要訪問整個XMLHttpRequest對象的成功回調,我建議嘗試這個。

var myXHR = $.ajax({ 
    ... 
    success: function(data, status) { 

    }, 
    ... 
}); 
+1

也可能是因爲上'此之上withCredentials'只需要跨域CORS問題請求 – charlietfl

+0

@charlietfl是啊,我做跨域請求,我已經actaully在conosle收到錯誤消息:XMLHttpRequest的不能加載的https:// 123 .COM/test.php的。請求的資源上沒有「Access-Control-Allow-Origin」標題。因此不允許Origin'http:// localhost'訪問。 – MHH

+0

@MHB如果你控制端點,那麼你需要在該php腳本中實現CORS。對該錯誤進行搜索...將找到數千個結果 – charlietfl

0

你可以試試下面,(如果你不希望使用AJAX success

complete: function(event,xhr,options) { 
    alert(xhr.responseText); 
} 
  • 事件 - 包含事件對象
  • XHR - 包含XMLHttpRequest對象
  • 選項 - 包含在AJAX請求中使用的選項
+0

當我這樣做,我甚至沒有得到迴應,我不知道爲什麼。 – MHH