繁体   English   中英

如何再次显示以前由jQuery隐藏的所有列表项?

[英]How to show all list items again that were previously hidden by jQuery?

我有一个搜索框,用于过滤结果,如果结果不符合过滤条件,则将其隐藏:

$('#box_street').keyup(function() {
                  var valThis = $(this).val().toLowerCase();
                  if (valThis == "") {
                    $('#street__list > .list__item').show();
                  } else {
                    $('#street__list > .list__item').each(function() {
                      var text = ($(this).text() + $(this).data("alt")).toLowerCase();
                      if (text.indexOf(valThis) >= 0) {
                        $(this).show()
                      } else {
                        $(this).hide();
                      }
                    });
                  };
                });

现在,我添加了一个函数,该函数使用$('.search__filter').val('');清除搜索框$('.search__filter').val(''); 问题是,一旦运行了以前隐藏的项目,就不会再显示。 表单输入重置为OK,但项目仍处于隐藏状态。

如何再次显示它们?

搜索输入为空后,您需要做的就是触发keyup事件,因为您已经有一个条件可以显示所有元素

$('#reset_button').on('click', function() {
    $('.search__filter').val('');
    // reset form ... then
    $('#box_street').trigger('keyup');
    // or you could do it yourself directly with : 
    // $('#street__list > .list__item').show();
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM