2017-08-29 12 views
-3

javascriptを使用して提供された値に基づいてテーブルをソートする方法があるかどうかは疑問です。例えば提供された値に基づいてテーブルをソート

、私は以下のようにテーブルを持っている場合:

id  name  team  
1  doe  red 
2  dee  blue 
3  daa  yellow 
4  doo  green 
5  duu  green 

レッツは、私は緑という名前のボタンを持っていると言います。緑色のボタンをクリックすると、最初に緑色のデータが表示されます。したがって、私が望む結果は:

id  name  team  
4  doo  green 
5  duu  green 
1  doe  red 
2  dee  blue 
3  daa  yellow 

ありがとうございます!それを感謝:)

+0

テーブルのどのような?これはJSONオブジェクトかHTML表ですか? – Ishey4

+2

はい、間違いなく道があります。しかし、あなたが作業しなければならないもの、さらに重要なのはあなたが試したことを示すコードは絶対にありません。 – j08691

+0

HTMLテーブル。私はそれを言及してごめんなさい申し訳ありません。 – Deja

答えて

0

ここではあなたの条件のためのロジックです:

var x = [].slice.call(document.getElementById("myTable").rows); 
    var search_rows = []; 
    var non_search_rows = []; 

    var search_text = "green";  // replace it with button text 
    var cell_index = 2;    // replace it with column index containing data 

    x.forEach(function(row){ 
     if (row.cells[cell_index].innerHTML === search_text) search_rows.push(row); 
     else non_search_rows.push(row); 
     }) 

    var rows_in_order = search_rows.concat(non_search_rows); 
    var d = document.createDocumentFragment(); 

    rows_in_order.forEach(function(row) 
     { 
     d.appendChild(row); 
     }); 

    document.getElementById("myTable").tBodies[0].appendChild(d); 
関連する問題