代码之家  ›  专栏  ›  技术社区  ›  dmikester1

在jquery tablesorter上以编程方式重置过滤器

  •  2
  • dmikester1  · 技术社区  · 9 年前

    我正在使用Mottie的jquery tablesorter和过滤器小部件。除了一件我想不通的事,一切都很顺利。我的桌子以模态显示。当您在过滤器框中键入一些文本,然后关闭模式并重新打开时,文本过滤器仍将应用。我希望在模式重新打开后清除/重置该过滤器。我在tablesorter网站上找不到任何重置过滤器的代码。我可以添加一个按钮来执行重置,但我无法找出执行重置的具体代码。

    3 回复  |  直到 9 年前
        1
  •  3
  •   Mottie    9 年前

    如果在模式打开时必须重新初始化tablesorter(因为有一个新的表),那么可以设置 filter_saveFilters option false 。上一个查询不会保存到本地存储,也不会应用到表。

    如果您只需要“applyWidgets”就可以让tablesorter在模式中工作(tablesortter每次都不会重新初始化),那么您需要使用 setFilters method 如下:

    $.tablesorter.setFilters( $('table'), [] );
    
        2
  •  0
  •   jordaniac89    9 年前

    当页面重新打开时,您可以不重新调用tablesorter吗?

    $("#myTable").tablesorter( {sortList: [[0,0], [1,0]]} );
    
        3
  •  0
  •   Edelmar Ziegler    3 年前

    唯一能让我做到这一点的方法是在之前强制过滤器字段变空 重新加载表格分拣机。 使用:

    $(".tablesorter-filter").val('');
    $table.tablesorter({ ...options... });