2017-09-04 5 views
0

私は結果をフィルタリングし、彼らは、フィルタに一致しない場合は、それらを隠し、検索ボックスがあります。それを実行後、今以前に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('');で検索ボックスをオフに機能を追加しました以前隠されたアイテムは再び表示されません。フォーム入力はOKにリセットされますが、項目はまだ隠されています。

どのように表示すればいいですか?

+0

を示し条件を持っているとして、あなたがしなければならないすべては、keyupイベントをトリガでは、あなたは、toLowerCaseメソッドの上に)(トリムを試してみました空白の問題を修正するための()また、if比較を実行するときにどの値が存在するかを見るためにデバッグを試みてください。 – madtyn

答えて

1

検索入力が空になったら、あなたはすでに、すべての要素

$('#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(); 
}); 
+0

それは完璧に働いた、ありがとう:) – user1996496

関連する問題