Удаление определенной строки с использованием таблиц данных - PullRequest
0 голосов
/ 29 августа 2018

Я хочу удалить строку из моей таблицы, строки добавляются с использованием обработки на стороне сервера, и у меня есть кнопка удаления, идентификатор которой является идентификатором строки в базе данных. При нажатии на кнопку удаления строка получает удаление из база данных, но не из таблицы. Также для всей строки здесь назначен id = "row_" идентификатор строки.

enter image description here

Используя следующий код, как я могу также удалить строку из таблицы или затемнить ее:

$('#users_table tbody').on( 'click', '.btn-delete', function () {
    var id = $(this).attr('id');
    var rowid = '#row_'+id;
    var sure = confirm("Are you sure you want to delete this user?");
    if (sure == true){
        $.ajax({
            type: "POST",
            url  : '../core/ajaxpdo.class.php',
            data: 'delete_user_id=' + id,
            success: function (response) {
                if (response=='ok'){


                }else{
                    operation_error();
                }
            },
            error: function() {
                alert('Something went wrong!');
            }
        });
        return false;
    }       
});

ПРОБОВАНАЮЩАЯ СЛЕДУЮЩАЯ СЛЕДУЮЩАЯ В ФУНКЦИИ УСПЕХА, НО НИКАКАЯ ИХ НЕ ВЫПОЛНЯЕТ МОЕ ТРЕБОВАНИЕ (оно удаляется из БД, но не из таблицы)

$('#users_table').dataTable().fnDeleteRow(rowid);

var linha = $(this).closest('tr');
linha.fadeOut(400, function () {
    tabelaP.row(linha).remove().draw()
});

var table = $('#users_table').dataTable();
table.fnDeleteRow( table.$(rowid)[0] ).draw();

ПО ИЗМЕНЕНИЮ СТРАНИЦЫ СТРАНИЦЫ УДАЛЯЕТ СТРОКУ, ТАК КАК Я МОГУ СДЕЛАТЬ, ЧТО ЭТО ТАКЖЕ ОБНОВЛЯЕТСЯ ИЛИ ЧТО-ТО ДЛЯ СТОРОНЫ СЕРВЕРА?

1 Ответ

0 голосов
/ 29 августа 2018

Хотя после долгих попыток удалить строку и перезагрузить ajax не удалось, так как я использовал данные PIPELINE. Чтобы обновить ajax без потери нумерации страниц, мне нужно clear the pipeline cache, а затем перезагрузить текущую страницу данных. отлично:

// CLEARING THE CACHE
$("#users_table").DataTable().clearPipeline();

// RELOAD CURRENT DATATABLES PAGE WITHOUT LOSING PAGINATION
$("#users_table").DataTable().ajax.reload(null, false );

И нет необходимости удалять конкретную строку, так как данные обновляются после удаления!

UPDATE:

Для удаления определенного tr with specific id:

var id = 'row id here';
var rowid = '#row_'+id;
$("#users_table tbody").find(rowid).remove();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...