tablesorter 更新 columnSelector 的 widgetOptions

tablesorter update widgetOptions for columnSelector

我想按名称搜索列

我尝试通过

手动执行此操作
                table[0].config.widgetOptions.columnSelector_columns = {
                    2: true,
                    3: false
                };

并调用 table.trigger('update');或者 table.trigger('applyWidgets');或 table.trigger('refreshColumnSelector'); 但没有工作 也试过刷新小部件,但它也不起作用...

* 请注意 * 此小部件和代码仅适用于我的 fork of tablesorter

您可以定位所有(或在本例中为两个)表,然后像这样使用 jQuery .each() method

$(".tablesorter")
    .each(function(i, table){
        var $table = $(table);
        $table.tablesorter({
            // ...
            widgetOptions: {
                // ...
                columnSelector_container : $('#columnSelector' + ( i + 1 )),
                // ...
            }
        })
        .bind('filterEnd', function(e, filter){
            // the current number of filtered rows is contained in config.filteredRows
            $table.prev('div').find('.filterCount').text( table.config.filteredRows );
        });
    });

至于 css,您可以将它们组合在一起:

#colSelect1:checked + label, #colSelect2:checked + label {
    background: #5797d7;
    border-color: #555;
}
#colSelect1:checked ~ #columnSelector1, #colSelect2:checked ~ #columnSelector2 {
    display: block;
}