我試圖張貼表單數據使用JQuery到遠程servlet。 我可以看到服務器接收到數據,並返回狀態碼200和「{result:'success'}」 的響應字符串但是,ajax調用不會返回已完成或失敗的函數(如果我添加總是發揮比我可以看到,它被調用) 下面是客戶端的代碼片段:JQuery ajax()完成/失敗回調沒有返回狀態200
`
var dataParams = 'email='+email+'&password='+password;
var url = 'http://127.0.0.1:8888/signup';
var jxhr = $.ajax({
type : "POST",
url : url,
data : dataParams,// serializes the form's elements.
dataType: "json",
done: function() {
console.log("done!");
hideSignUp();
showThankYou(); },
fail: function() {
console.log("fail!");
}
});
`
好像我就會錯過了什麼,但似乎無法找到什麼。 請注意,我正在使用JQuery 1.8.3,因此成功已被棄用。 有什麼想法?
嘗試**成功**而不是**完成**和**錯誤**而不是**失敗**。 – Dim13i
@ Dim13i - 我已經嘗試過了,順便說一句 - 我使用的是JQuery 1.8.3,因此它的成功已經被棄用了。 –
您是否打開了控制檯,查看是否有任何請求錯誤,如同源?如果成功沒有被調用,錯誤應該被調用。 '失敗'作爲'$ .ajax'的選項沒有記錄,我從未嘗試過這種方式,所以我不知道它是否有效。如前所述,它應該是'錯誤'和'成功'。 「成功」和「錯誤」選項不折舊,只有「jqXHR」的匹配方法折舊。 (例如,'$ .ajax(...)。success()' –