Есть таблица (DataTable) как обновить её данные (если они меняются сторонними функциями)

есть таблица и пару внешних факторов, которые фильтруют ВНИМАНИЕ (Не таблицу, а запрос) который потом загружает данные в таблицу методом ajax + json (result.html) Данные таблицы меняются и это хорошо...но если нажать на вторую страницу или кнопку распечатать, то данные вернуться в первоначальный вид...как перезаписать данные таблицы, как сделать переинициализацию

tableImport: function(selector) {
    var table = $(selector);

    table.dataTable({
        order: [3, 'desc'],
        sDom: '<"text-right mb-md"T><"row"<"col-lg-6"l><"col-lg-6"f>><"table-responsive"t>p',
        buttons:  ['print', 'excel', 'pdf']
    });


    $('<div />').addClass('dt-buttons mb-2 pb-1 text-right').prependTo(selector+'_wrapper');
    table.DataTable().buttons().container().prependTo(selector+'_wrapper .dt-buttons' );
    $(selector+'_wrapper').find('.btn-secondary').removeClass('btn-secondary').addClass('btn-default');
},

setData: function(first, regionid, filialid, access) {
    if(access != 1) {
        access = 0;
    }

    if ((typeof(regionid) != 'number' && typeof(regionid) != 'string') || !regionid) {
        regionid = 0;
    }

    if ((typeof(filialid) != 'number' && typeof(filialid) != 'string') || !filialid) {
        filialid = 0;
    }



    
    if ($('#servicegroup option:selected').attr('post') == '0') {
        $('#post_err').show();
    } else {
        $('#post_err').hide();
    }

    $('#tbody').html($('#tbody').attr('loading'));
    ajaxRequest(
        'hide',
        '/front_user/IndexForm/',
        {
            regionId: regionid,
            filialId: filialid,
            access: access
        },
        
        function(result) {
            if (!result.err) {
                $('tbody').html(result.html);
                if(first == 1) {
                    // действие при первой формировки таблицы
                    base.tableImport('#datatable-tabletools');
                } else {
                    // здень нужно заставить таблицу обновиться с данными result.html
                }
                $('#prgBar').modal('hide');
            } else {
                $('#tbody').html($('#tbody').attr('loading_error'));
            }
        }
    );
},

Пример работы


Ответы (1 шт):

Автор решения: Олег Файн

Решил вопрос следующим образом Я передавал в result.html только строки (....</tr), а теперь через ajax передаю таблицу целиком, и после того как она загрузилась, инициализирую её как dataTable, тогда все работает отлично

→ Ссылка