JQuery.tablesorter дважды сортирует один и тот же столбец из одной таблицы

0

У меня есть 2 таблицы "newsTable" и "eventsTable". Я хочу сделать их отсортированными с помощью jquery.sortable plugin, его работа довольно хорошо, но когда я нажимаю на любой столбец, он сортируется дважды, поэтому на самом деле я получаю начальную позицию:/Как решить проблему? Почему столбцы сортируются дважды? У меня не было проблем с этим, когда у меня была только одна таблица на странице, теперь у меня есть 2 и проблемы появились :(

<script>
$(document).ready(function() 
    { 
        $("#newsTable").tablesorter(); 
    } 
); 

$(document).ready(function() 
    { 
        $("#newsTable").tablesorter( {sortList: [[1,0]]} ); 
    } 
);

$(document).ready(function() { 
    $("table") 
    .tablesorter({widthFixed: true, widgets: ['zebra']}) 
    .tablesorterPager({container: $("#pager1")}); 
}); 

$(document).ready(function() 
    { 
        $("#eventsTable").tablesorter(); 
    } 
); 

$(document).ready(function() 
    { 
        $("#eventsTable").tablesorter( {sortList: [[1,0]]} ); 
    } 
);

$(document).ready(function() { 
    $("table") 
    .tablesorter({widthFixed: true, widgets: ['zebra']}) 
    .tablesorterPager({container: $("#pager2")}); 
}); 
</script>
  • 0
    Возможно ли опубликовать вашу таблицу html? Возможно, вы используете один и тот же класс в обеих таблицах.
  • 0
    <table class = "table" id = "newsTable"> и <table class = "table" id = "eventsTable">
Показать ещё 2 комментария
Теги:
jquery-ui-sortable

1 ответ

0
Лучший ответ

Вы добавляете табличный блок четыре раза для обеих таблиц, поэтому сортировка происходит четыре раза.

Попробуйте вызвать $(document).ready() только один раз:

$(document).ready(function()
{
    $("#newsTable").tablesorter( 
    {
        widthFixed: true, 
        widgets: ['zebra'],
        sortList: [[1,0]]
    }).tablesorterPager(
    {
        container: $("#pager1"),
        size: 5
    }); 

    $("#eventsTable").tablesorter( 
    {
        widthFixed: true, 
        widgets: ['zebra'],
        sortList: [[1,0]]
    }).tablesorterPager(
    {
        container: $("#pager2"),
        size: 5
    }); 
});
  • 0
    это работает, спасибо большое !!! :)
  • 0
    но есть еще одна проблема: в обеих таблицах я получил пейджер (pager1 и pager2), они работают хорошо, если я установил 10/20/30 строк на страницу, но при запуске страницы я установил, что должно отображаться только 5, но это показывает гораздо больше: / похоже, он показывает все строки в начале, не смотря на то, сколько я установил в коде, чтобы начать с
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню