如何通过单击 jquery 中的按钮清除同位素搜索过滤器?

How to clear Isotope search filter with a click of a button in jquery?

我正在尝试清除我的搜索过滤器而不是删除搜索字段中的文本,而是使用一个按钮。搜索字段清除,但网格上的所有项目不会重新出现。

我尝试将清除按钮作为组合过滤器的一部分,并添加了 data-filter="*",但仍然不起作用。

  <div class="button-group js-radio-button-group" data-filter-group="clear">
    <a class="button" id="clearme" data-filter="">Clear</a>
  </div>

这是我用来清除搜索字段的代码:

$('#clearme').on( 'click', function() {
    $(".quicksearch").val("");
})

And here's the whole codepen

你可以试试

$("#clearme").click(function(){
    $(".grid").isotope({
        filter: '*'
    });
});

这将清除所有过滤器。

另一个答案中同位素重新初始化的问题是点击后重新定义了过滤函数,因此您编写的初始函数被重置并停止工作,这在您的特定使用中是个坏主意案例.

在不干扰之前创建的过滤器函数的情况下,一个简单的方法是这样的:

$('#clearme').on( 'click', function() {
    $(".quicksearch").val("");
    $(".quicksearch").keyup();
})