0

各行にタグがある DataTable があります。

<table id="mytable" class="table table-striped table-bordered dt-responsive" width="100%">
    <thead>
        <tr>
            <th>Column1</th>
            <th>Column2</th>
        </tr>
    </thead>
    <tbody>
        <tr mytag = "tag1">
            <td>...</td>
            <td>...</td>
        </tr>
        <tr mytag = "tag2">
            <td>...</td>
            <td>...</td>
        </tr>
    </tbody>
</table>

すべてのタグを含む選択ボックスを用意します。

<select id="select_tag" class="select2-original">           
    <option value="tag1">tag1</option>
    <option value="tag2">tag2</option>              
</select>

タグが選択されている場合、テーブルをフィルタリングしてタグのある行のみを表示したいのですが、うまくいきません。

var mytable= $('#mytable').DataTable();
$('#select_tag').on('change', function () {
  var tagvalue = this.value;
  mytable
    .rows(function (idx, data, node) {
        return node.getAttribute("mytag") == tagvalue? true : false;
     })
    .draw();
})

また、.hide() を試し、.data() を追加しました...これまでのところ何も機能しません...

4

1 に答える 1