проблема с jquery tableorter с динамически добавленными строками - PullRequest
13 голосов
/ 01 января 2011

привет, у меня проблема с динамически добавляемыми строками в jquery tablesorter,

мне нужно добавить строку в начало таблицы, по умолчанию tableports работает нормально, но после добавления строки,таблица сортируется только по предыдущим строкам, я имею в виду, что новая строка не включена в процесс сортировки, в новой строке есть некоторые, но не все поля, пустые какое-либо решение?

Ответы [ 4 ]

20 голосов
/ 01 января 2011

Веб-сайт TableSorter предлагает подробную информацию о том, как это сделать, по адресу: Добавление данных таблицы с помощью Ajax . Код воспроизводится ниже:

$(document).ready(function() {
    $("table").tablesorter();
    $("#ajax-append").click(function() {
        $.get("assets/ajax-content.html", function(html) {
            // append the "ajax'd" data to the table body 
            $("table tbody").append(html);
            // let the plugin know that we made a update 
            // updateAll ensures sorting is updated as well
            $("table").trigger("updateAll");
            // set sorting column and direction, this will sort on the first and third column 
            var sorting = [[2, 1], [0, 0]];
            // sort on the first column 
            $("table").trigger("sorton", [sorting]);
        });
        return false;
    });
});
1 голос
/ 01 января 2011

Вы пытались сбросить TableSorter и инициализировать новый сеанс TableSorter?

Поскольку табличный сортировщик не знает, что вы добавили новые строки, почему бы не установить новый табличный сортировщик в таблице.

0 голосов
/ 25 ноября 2016

Эти строки отлично сработали для меня. После назначения HTML просто запустите функцию обновления таблицы.

$('#tblID').html(str);
$("#tblID").trigger("update");

, где #tblID - это идентификатор таблицы, а str - это html строк таблицы, назначенных таблице.

0 голосов
/ 15 октября 2013

Единственный способ заставить его работать - это восстановить всю таблицу (удалить ее, а затем создать заново).

$(".resultTablePlaceholder").html('').html('<table id="resultTable">...</table>');
$("#resultTable").tablesorter();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...