таблицы данных, получающие положение строки после сортировки - PullRequest
2 голосов
/ 11 ноября 2011

Я использую плагин jQuery datatables с подкачкой, сортировкой. Существует более одной страницы данных, представленных пользователю. Данные Datatables периодически обновляются источником данных ajax json.

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

Я пытался с fnGetPosition () , но он показывает только положение tr в источнике aaData.

Вопрос в том, как получить положение строки в datatable после сортировки, чтобы я мог переключиться на соответствующую страницу, где отмечена выбранная запись

Ответы [ 2 ]

2 голосов
/ 11 ноября 2011

fnSettings () имеет атрибут aiDisplayMaster, который содержит массив значений fnGetPosition () [0], мне удалось это использовать.

0 голосов
/ 10 марта 2015

Этот код переместит вас на страницу с заданной строкой (в моем случае это страница со строкой с классом .selectedItem).Однако он использует более новый API таблиц данных.

function moveToPageWithSelectedItem() {
    var numberOfRows = itemsTable.data().length;
    var rowsOnOnePage = itemsTable.page.len();
    if (rowsOnOnePage < numberOfRows) {
        var selectedNode = itemsTable.row(".selectedItem").node();
        var nodePosition = itemsTable.rows({order: 'current'}).nodes().indexOf(selectedNode);
        var pageNumber = Math.floor(nodePosition / rowsOnOnePage);
        itemsTable.page(pageNumber).draw(false); //move to page with the element
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...