我有一個表,我有一個刪除按鈕。基本上我想要做的是當我點擊刪除按鈕時,它會發送一個DELETE請求到我們的服務器並在db上更新。如果成功,它會從表中刪除該行。AJAX成功失敗回調不起作用
Config.js
var SiteConfigProxy = function() {
"use strict";
var getSiteConfig = Config.apiUrl + "/configs/site/{siteId}";
var addDevice = Config.apiUrl + "/configs/device/{deviceId}";
var delete1 = function (url, data, done, fail){
$.ajax({
type: "DELETE",
url: url,
data: JSON.stringify(data),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
if (typeof (done) === 'function') done(data);
},
failure: function (data) {
if (typeof (fail) === 'function') fail(data);
}
});
};
return {
deleteDeviceConfig: function (deviceId, data, done, fail){
delete1(addDevice.replace("{deviceId}", deviceId), data, done, fail);
}
};
}();
siteconfig.js
configTable.on("click", ".delete", function (event) {
event.preventDefault();
if (confirm("Are you sure to delete this row?")) {
var tableRow = $(this).parents("tr")[0];
var data = {
siteId: tableData.fnGetData(tableRow)[1],
hostname: tableData.fnGetData(tableRow)[2]
};
SiteConfigProxy.deleteDeviceConfig(tableData.fnGetData(tableRow)[0], data,
function(data){
tableData.fnDeleteRow(tableRow);
console.log("delete succeeded");
},
function(data){
console.log("delete failed");
}
);
}
});
現在,當我點擊按鈕,每一次,它不會刪除該行控制檯將無法登錄該聲明。我只是想知道爲什麼成功和失敗回調不起作用。
非常感謝
控制檯日誌中是否有任何錯誤?如果您檢查瀏覽器的網絡標籤,您是否看到它發送AJAX請求? – Barmar
@Barmar控制檯日誌中沒有錯誤。 ajax請求實際上是發送的,我可以看到該行已經在db中刪除 – singard
您是否在網絡標籤中看到JSON響應? – Barmar