0

この素晴らしいリストフィルタリングjQueryスクリプトを見つけて、単純なol liリストに実装しました。検索で何かを入力するliと、アイテムから入力した文字が検索され、残りのが非表示になりlisます。完璧に動作します!

しかし、私は同じスクリプトをより複雑なものに実装しましたlist。唯一の違いはHTMLです。他の人が持っていないのと同じように、私はdivs自分の中に余分なものを持ってliいます。新しいものを検索すると、list正しく機能しません。検索語を削除すると、元のアイテムはslideDownすべて削除されますが、削除されます。li下のフィドルを見て、Imが間違っていることを教えてください。

単純なリストフィドル が正しく機能していないリストフィドルが正しく機能していない

以下の台本を感じます

$(list).find("a:not(:Contains(" + filter + "))").parent().slideUp();
$(list).find("a:Contains(" + filter + ")").parent().slideDown();

私はいくつかの異なる方法を試しましたが、どれもうまくいきませんでした。

どうもありがとう。

4

1 に答える 1

1

これは機能するはずです。 http://jsfiddle.net/mpt8T/

$(list).find('li').each(function(){
    if ( $(this).text().indexOf(filter) >= 0 )
        $(this).slideDown();
    else
        $(this).slideUp();
});
于 2013-02-26T14:48:45.337 に答える