マージされた行のフィルター/検索テーブル

user4324324

テーブルの内容を検索しようとしています。以下のコードは、rowspanのない行のフィルターで機能します。しかし、マージされた行のコンテンツを検索すると、期待した出力が得られません。

function myFunction() {
  var input, filter, table, tr, td, i;
  input = document.getElementById("myInput");
  filter = input.value.toUpperCase();
  table = document.getElementById("myTable");
  tr = table.getElementsByTagName("tr");
  for (i = 0; i < tr.length; i++) {
    td = tr[i].getElementsByTagName("td")[0];
    if (td) {
      if (td.innerHTML.toUpperCase().indexOf(filter) > -1) {
        tr[i].style.display = "";
      } else {
        tr[i].style.display = "none";
      }
    }       
  }
}

JSFIDDLE

キーワード「IslandTrading」での検索は機能していますが、「Berglundssnabbkop」での検索では誤った出力が表示されます。

これに関するどんな助けも本当に役に立ちます。

jrook

<td>行スパンがある場所に非表示を追加します。

<tr>
    <td style="display:none;">Alfreds Futterkiste</td>
    <td>Berglunds snabbkop</td>
</tr>

そして更新されたフィドル:https//jsfiddle.net/0j3defzs/2/

これが発生する理由は、関数がテーブルの最初の列を検索しているが、行をスパンすると、一部の行が前の行の横(下ではなく)に表示されるためです。tdのsを挿入すると、フィルタリング関数が間違った列を検索することがなくなります。

編集

テーブルに実際にはすべての行に2つの列がある方が理にかなっていると思いますが、テーブルをまったく変更したくない場合は、次のようなものでも機能します(フィドル:https//jsfiddle.net/m6cbzrh9/ 1 /

function myFunction() {
    var input, filter, table, tr, td, i;
    input = document.getElementById("myInput");
    filter = input.value.toUpperCase();
    table = document.getElementById("myTable");
    tr = table.getElementsByTagName("tr");
    var show = true;
    var spannedRows = 0;
    for (i = 0; i < tr.length; i++) {
        td = tr[i].getElementsByTagName("td")[0];
        if(spannedRows > 0) {
            if(show)
                tr[i].style.display = "";
            else
                tr[i].style.display = "none";
            spannedRows--;
        } else if (td) {
            if (td.innerHTML.toUpperCase().indexOf(filter) > -1) {
                tr[i].style.display = "";
            } else {
                tr[i].style.display = "none";
            }
            let rs = td.getAttribute("rowspan");
            console.log("rs = " + rs);
            if(rs && rs > 1) {
                show = td.innerHTML.toUpperCase().indexOf(filter) > -1;
                spannedRows = rs - 1;
            }
        }
    }
}

これは、行スパンが常に複数行の列の最初のセルで定義され、その最初のセルの結果に基づいてすべての行をフィルタリングすることを前提としています。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

「テーブルビュー」および「フィルタリングされた検索バー」からの行の削除が機能しない

分類Dev

フィルタされたテーブルのデータ検証

分類Dev

javascriptを使用して、テーブル内のフィルタリングされた行のみを検索して置換します

分類Dev

マルチテーブル、マルチフィルターpostgresql検索-rails

分類Dev

他のテーブルからフィルターで検索

分類Dev

reactJSを使用してフィルター処理された検索テーブルを作成する方法。テーブル内の情報をフィルタリングするために検索バーを取得しようとしています

分類Dev

MySQLの暗号化されたデータの検索フィルター

分類Dev

検索入力フィールドを使用したng-repeatのネストされたオブジェクトのフィルタリング

分類Dev

「innerHTML」コードで新しく作成された要素で「検索フィルター」検索を行う方法は?

分類Dev

事前検索クエリでマングースフィルターのネストされた配列

分類Dev

フィルタリングされた検索投稿結果でのDjangoページネーション

分類Dev

Angularのマットデータテーブル検索フィルターをリセットする

分類Dev

テーブルデータを検索するための検索入力フィールドを作成するにはどうすればよいですか?

分類Dev

Excel-フィルタリングされたテーブルのデータ検証リスト

分類Dev

フィルタリングされたコンテンツを表示しないreactredux検索フィルター?

分類Dev

検索およびフィルタリングされた値のクエリテーブルを表示するにはどうすればよいですか?

分類Dev

NetsuiteSSv2保存された検索のフィルターを更新する方法

分類Dev

ネストされた配列の検索/フィルターJavascript / Lodash

分類Dev

設定されたフィールドの均等検索

分類Dev

Primefaces4.0-ページ化されたデータテーブルフィルタリングの問題

分類Dev

テキストとアイコンが表示されたIntelliSenseフィルター/検索リストの改善

分類Dev

角度テーブル検索フィルター

分類Dev

datatable増加テーブル検索フィルター幅

分類Dev

検索フィルターにワイルドカードパターンを使用したネストされたグループのActiveDirectory検索クエリ

分類Dev

jsonオブジェクトフィールドのプロパティによるマングース検索

分類Dev

「検索」プレスの角度データテーブル検索フィルター

分類Dev

フィルタリングすると、jQueryデータテーブルでのグローバル検索がクリアされます

分類Dev

どのフィールドまたはテーブルに保存されている Sitecore マスター DB のバージョン

分類Dev

サーブレットを使用してdbから取得したjspページのテーブルテーブル行のリストに検索フィルタを適用します

Related 関連記事

  1. 1

    「テーブルビュー」および「フィルタリングされた検索バー」からの行の削除が機能しない

  2. 2

    フィルタされたテーブルのデータ検証

  3. 3

    javascriptを使用して、テーブル内のフィルタリングされた行のみを検索して置換します

  4. 4

    マルチテーブル、マルチフィルターpostgresql検索-rails

  5. 5

    他のテーブルからフィルターで検索

  6. 6

    reactJSを使用してフィルター処理された検索テーブルを作成する方法。テーブル内の情報をフィルタリングするために検索バーを取得しようとしています

  7. 7

    MySQLの暗号化されたデータの検索フィルター

  8. 8

    検索入力フィールドを使用したng-repeatのネストされたオブジェクトのフィルタリング

  9. 9

    「innerHTML」コードで新しく作成された要素で「検索フィルター」検索を行う方法は?

  10. 10

    事前検索クエリでマングースフィルターのネストされた配列

  11. 11

    フィルタリングされた検索投稿結果でのDjangoページネーション

  12. 12

    Angularのマットデータテーブル検索フィルターをリセットする

  13. 13

    テーブルデータを検索するための検索入力フィールドを作成するにはどうすればよいですか?

  14. 14

    Excel-フィルタリングされたテーブルのデータ検証リスト

  15. 15

    フィルタリングされたコンテンツを表示しないreactredux検索フィルター?

  16. 16

    検索およびフィルタリングされた値のクエリテーブルを表示するにはどうすればよいですか?

  17. 17

    NetsuiteSSv2保存された検索のフィルターを更新する方法

  18. 18

    ネストされた配列の検索/フィルターJavascript / Lodash

  19. 19

    設定されたフィールドの均等検索

  20. 20

    Primefaces4.0-ページ化されたデータテーブルフィルタリングの問題

  21. 21

    テキストとアイコンが表示されたIntelliSenseフィルター/検索リストの改善

  22. 22

    角度テーブル検索フィルター

  23. 23

    datatable増加テーブル検索フィルター幅

  24. 24

    検索フィルターにワイルドカードパターンを使用したネストされたグループのActiveDirectory検索クエリ

  25. 25

    jsonオブジェクトフィールドのプロパティによるマングース検索

  26. 26

    「検索」プレスの角度データテーブル検索フィルター

  27. 27

    フィルタリングすると、jQueryデータテーブルでのグローバル検索がクリアされます

  28. 28

    どのフィールドまたはテーブルに保存されている Sitecore マスター DB のバージョン

  29. 29

    サーブレットを使用してdbから取得したjspページのテーブルテーブル行のリストに検索フィルタを適用します

ホットタグ

アーカイブ