2013-04-16 2 views
2

Я пытаюсь реализовать поиск в 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

Решенный путем добавления

$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(); 
}); 
Смежные вопросы