TableSorter过滤器和滚动器小部件更新

时间:2014-01-24 13:01:41

标签: jquery html tablesorter

我正在尝试将TableSorter与Widgets Scroller和Filters一起使用,它们完美无缺,

$("table").tablesorter({
    theme: 'blue',
    widgets: ["zebra", "filter", "scroller" ]

});

但是,我的表开始为null或空,在我输入数据之后,所以我要使用Update。

$("table").trigger("updateAll")

有我的问题,我不能同时做Scroller和Filter工作,只是一个或另一个。

有人可以帮助我吗?

(对不起,如果我的英语不好)

实施例: http://jsfiddle.net/s4ACj/5/

1 个答案:

答案 0 :(得分:0)

有两个问题。

  1. 过滤器小部件不会在空表上初始化。
  2. 滚动小部件需要修复很多错误(我没时间做)
    • 包括添加过滤器行(如果在初始化时不存在)。
    • 在更新表格时完全删除滚动窗口小部件
  3. 要解决此问题,请尝试将附加代码更改为此(update demo):

    $("#append").click(function () {
        // add some html
        var html = "<tr><td>Aaron</td><td>Johnson Sr</td><td>Atlanta</td><td>GA</td></tr>",
            // scroller makes a clone of the table before the original
            $table = $('table.update:last');
    
        // append new html to table body 
        $table.find("tbody").append(html);
    
        // remove scroller widget completely
        $table.closest('.tablesorter-scroller').find('.tablesorter-scroller-header').remove();
        $table
            .unwrap()
            .find('.tablesorter-filter-row').removeClass('hideme').end()
            .find('thead').show().css('visibility', 'visible');
        $table[0].config.isScrolling = false;
    
        // let the plugin know that we made a update, then the plugin will
        // automatically sort the table based on the header settings
        $("table.update").trigger("update");
    
        return false;
    });
    

    我会尝试修补,修复错误,并在有空的时候完全重写滚动小部件。