Javascript 在使用filter小部件时,是否可以按类将特定的tablesorter列作为目标?

Javascript 在使用filter小部件时,是否可以按类将特定的tablesorter列作为目标?,javascript,jquery,tablesorter,Javascript,Jquery,Tablesorter,我正在使用tablesorter.js的@Mottie分支 我在一个页面上有5-10个小表格,我想使用一个外部过滤器一次过滤所有表格,但只过滤一列。文件提到: // filters to exclude, per column filter_excludeFilter : {}, 它需要基于零的索引来选择要排除的列;但是,我选择的列因表而异。我希望通过header类只针对一个列,因为我可以对它应用一个类。相关代码: HTML: <input type="searc

我正在使用tablesorter.js的@Mottie分支

我在一个页面上有5-10个小表格,我想使用一个外部过滤器一次过滤所有表格,但只过滤一列。文件提到:

      // filters to exclude, per column
      filter_excludeFilter : {},
它需要基于零的索引来选择要排除的列;但是,我选择的列因表而异。我希望通过header类只针对一个列,因为我可以对它应用一个类。相关代码:

HTML: <input type="search" class="search" placeholder="filter..." /></div>

js:
      var $table = $(".tablesorter").tablesorter({
      widgets: ["filter"],
      widgetOptions: {
          filter_external: '.search',
          filter_defaultFilter: { '.salesinitials': '~{q}', },
          filter_functions: { '.salesinitials': true },
          filter_columnFilters: false
      }
  });

  $("th > div.tablesorter-header-inner:contains('Sales Initials')")
   .parent().addClass("salesinitials");
是否有其他方法只针对一列进行筛选?

允许您使用jQuery选择器代替列索引

但是,我认为您需要的解决方案是使用以下命令将所有表绑定到一个过滤器输入:

var $filter = $('.single-filter-input');
$('.all-tables').each(function(table) {
  // table - table DOM element (or jQuery object) of table.
  // $el - jQuery object of one or more input (search) elements to bind.
  // false - boolean flag to force a new search.
  $.tablesorter.filter.bindSearch(table, $filter, false);
});