テーブルの検索ボックスを単純に並べ替えるのは難しいです。jQueryを使用したテーブルの大文字と小文字を区別しない検索ボックス
私は次のコードを持っている:
<input name="search" />
<table id="content">
<tr class="item"> (...) </tr>
<tr class="item"> (...) </tr>
</table>
$(document).ready(function(){
$('input[name="search"]').keydown(function(){
$('tr.item:contains("' + $(this).val()+ '")').prependTo('#content');
});
これはうまく動作しますが、.contains()は、大文字と小文字が区別されます。
どのように大文字小文字を区別しないようにすることができますか?
私はネット上でこれを見つけた:
http://bugs.jquery.com/ticket/278#comment:4
http://ericphan.info/blog/2009/3/4/jquery-13-case-insensitive-contains.html
が、私は次のコードを追加するとき:
$.extend($.expr[":"], {
"containsIgnoreCase": function(elem, i, match, array) {
return (elem.textContent || elem.innerText || "").toLowerCase().indexOf((match[3] || "").toLowerCase()) >= 0;
}});
を何も変えていないようにみえて、私の検索ボックスは、ケースのまま敏感な...
おかげでたくさん使います!これは素晴らしい作品です! 申し訳ありませんが私の質問があまりにも些細だったが、私はjQueryの拡張機能を使用したことがない。私は単純に元の.contains()関数がextenstionによって上書きされると考えました。それは私の間違いでした。 – lukeshek
嬉しいことに、これを答えとしてマークすることをお手伝いしました。ありがとう – ShankarSangoli