LoginSignup
0
1

More than 1 year has passed since last update.

テーブルの動的フィルタ機能を雑に実装しよう extablefilter (jQueryプラグイン)

Last updated at Posted at 2022-10-09

はじめに

extablefilterは、テーブルのフィルタリングを画面実装したいときに便利なjqueryプラグインです。
「input入力すると、テーブルが動的に絞り込みされる」実装を実現します。
あまりにもよくお世話になる(この時代でもなお)ので備忘録を兼ねて紹介させてください。
MITライセンスです。

使い方

シンプルな例

  1. jquery読み込み
  2. extablefilterを読み込み
  3. inputやtableを含むHTMLを書く
  4. input formとtableに対してexTableFilterを実行

という順番になります。以下が例です。

<!-- スクリプト読み込み -->
<!-- The integrity and crossorigin attributes are used for Subresource Integrity (SRI) checking -->
<script  src="https://code.jquery.com/jquery-3.6.1.min.js"
  integrity="sha256-o88AwQnZB+VDvE9tvIXrMQaPlFFSUTR+nldQm1LuPXQ=" crossorigin="anonymous"></script>
<script src="http://www.cyokodog.net/jquery.ex-table-filter/jquery.ex-table-filter.js"></script>

<!-- ページの中身 -->
<p>
  <input type="text" id="myfilter" class ="input form-control">
</p>
<p>
<table id="mytable" border=1 class="table table-striped">  
    <thead>
        <tr><th>No</th><th>英語</th><th>日本語</th></tr>
    </thead>
    <tbody>
       <tr><td>1</td><td>first</td><td>1番目</td></tr>
       <tr><td>2</td><td>second</td><td>2番目</td></tr>
    </tbody>
</table>
</p>

<!-- フォームIDがmyfilterのinputに対して、テーブルIDがmytableの項目のフィルタリングを有効にする -->
<script>
jQuery('#mytable').exTableFilter('#myfilter');
</script>

Codepen

※例はbootstrapで見た目を整えています。

いずれかの列に含まれる文字列に対し、ユーザのテキスト入力でフィルタリングする

See the Pen Untitled by Naz (@nazunamix) on CodePen.

自動生成されたチェックボックス、ラジオ、セレクターでフィルタリングする

See the Pen extablefilter2 by Naz (@nazunamix) on CodePen.

おわりに

この他にも色々とカスタマイズできるオプションがあるので、ぜひ公式ページをご確認ください。
jqueryが許される環境であればお好みで…

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1