У меня есть этот блок кода, который работает правильно, чтобы удалить строку из таблицы, когда я нажимаю выбранный <td>
var table = $('#students-table').DataTable();
$('#students-table tbody').on('click', 'i.icon-delete', function () {
table.row($(this).parents('tr')).remove().draw();
});
но когда я вставляю эту строку в $.post.done, она вообще не работает:
var table = $('#students-table').DataTable();
$('#students-table tbody').on('click', 'i.icon-delete', function () {
var student_id = $(this).attr('student_id');
$.post("backend.php", {"action": "deleteStudent", "student_id": student_id}).done(function (response) {
response = JSON.parse(response);
if (response.deleted == "1") {
console.log("A");
table.row($(this).parents('tr')).remove().draw();
console.log("B");
}
}); // post
});
однако условие response.deleted == "1"
оценивается как True
, а console.log("A");
и console.log("B");
также работает правильно.
Итак, почему строка удаления строки не работает, когда она находится внутри функции done()
функции $.post
Обратите внимание, что вопрос не об удалении процесс.