重置以前搜索中的隐藏项目

时间:2013-04-16 21:15:34

标签: javascript jquery

我正在尝试使用Javascript为我的应用程序实现搜索,而且我遇到了一个问题,我之前隐藏的项目不会再出现。 JSFiddle

我的代码在这里:

$('#search').keyup(function() {
    var val = $.trim($(this).val()).replace(/ +/g, ' ').toLowerCase();

    $searchproject.show().filter(function() {
        var text = $(this).text().replace(/\s+/g, ' ').toLowerCase();
        return !~text.indexOf(val);
    }).parents('div.srcprojects').hide();
});

问题是我隐藏了我过滤选择的父srcprojects容器,因此keyup不再显示它。

但是,如果我改变

$searchproject.show().filter(function() {

$searchproject.parents('div.srcprojects').show().filter(function() {

根本不起作用。我做错了什么?

1 个答案:

答案 0 :(得分:1)

通过添加

解决
$searchproject.parents('div.srcprojects').show();

完整代码:

$('#search').keyup(function() {
    var val = $.trim($(this).val()).replace(/ +/g, ' ').toLowerCase();
    $searchproject.parents('div.srcprojects').show();
    $searchproject.show().filter(function() {
        var text = $(this).text().replace(/\s+/g, ' ').toLowerCase();
        return !~text.indexOf(val);
    }).parents('div.srcprojects').hide();
});