入力フィールドに入力されたデータに基づいてリストをフィルタリングするjqueryクイック検索プラグイン(https://github.com/riklomas/quicksearch )を使用しています。
結果が返されない場合は、その旨のメッセージを表示したいと思います。
クイック検索プラグインは、表示されないすべてのリスト要素にdisplay:noneを追加します。
したがって、私はこれを試しました:
// load jquery.quicksearch
$('#search').parent().css('display','block').end().quicksearch('#ul'+id+' li');
// show / hide message
$("input#search").keypress(function() {
li = $('.category li');
if (li.css('display') == 'none') {
$('body').append('<div id="noContent">no content</div>');
} else {
$('#noContent').remove();
}
});
その結果、非常に厄介な/バグのあるソリューションになります。すべてのliアイテムに表示がある場合でも、メッセージが追加されない場合があります:none。また、リストアイテムが表示されている場合でも、コンテンツなしのメッセージは削除されません。
何か案は?