остановить вызовы ajax табулятора из окна прокрутки в начало страницы - PullRequest
0 голосов
/ 06 июня 2018

Плагин табулятора настроен и работает с моими данными.В настоящее время используется функция удаленного разбиения на страницы, но всякий раз, когда нажимаются кнопки разбиения на страницы, она загружает данные и затем прокручивается в верхнюю часть страницы.Кнопки нумерации страниц не содержат href="#", поэтому не следует пытаться загрузить состояние браузера.

Действительно странно то, что это происходит при любом вызове ajax, который я выполняю относительно табулятора.Я использовал функцию setData для загрузки обновленных данных, и она снова прокручивалась вверх страницы.

Вот очень упрощенная версия моего кода:

<div id="#tabulator"></div>

<script>
    $("#tabulator").tabulator({
        movableColumns: true,
        layout: "fitColumns",
        pagination: "remote",
        paginationSize: 10,
        ajaxURL: "rosterusers_tabulator_data-json.cfm",
        ajaxParams: {/* url params here */},
        columns: [/* columns set here*/]
    });

    /*then I have a modal dialog update event which calls the following*/
    $("#tabulator").tabulator(
        "setData",
        "rosterusers_tabulator_data-json.cfm", 
        {/*url params here*/}
    );
</script>

Не думаю, что яЗдесь я делаю что-то странное, но каждый раз, когда данные таблицы обновляются через ajax, в любом случае (изменение страницы, изменение данных, изменение фильтра и т. д.) она прокручивается в верхнюю часть страницы.

1 Ответ

0 голосов
/ 24 сентября 2018

Функция replaceData может использоваться для установки данных в таблице без изменения позиции прокрутки

$ ("# example-table"). Tabulator ("replaceData", "rosterusers_tabulator_data-json.cfm")

...