* EDIT * 物事をクリアする。私は表示して非表示にすることができます。それは問題ではない。私がしたいのは、クラスに基づいてテーブルの行を完全に再構築することです。私が最初に入ったとき、テーブルには何千もの行が潜んでいる可能性があります。彼らはすべて '両方'、 'オプション1'または 'オプション2'のクラスを持っています。私は一度にこれらの5つを表示し、最初、前、次、最後のボタンのクリックに基づいてページを表示する必要があります。ただし、表の行の一部が表示され、一部が表示されるべきでない場合は、非常に困難になります。jQuery:フィルタされたデータから表の行を再作成
私はテーブルhtmlを再構築するために本質的に3つの配列を持っていたいと思います。 1つはすべての行を持ち、1つはOption1行と1つはOption2行です。
これはもう少し明確です。 * END EDIT *
私はテーブルが構築されていて、すぐにすべての行が非表示になっています。次に、ラジオボタンのクリックイベントに応じて、指定された条件でテーブルの最初の5行を表示します。
3つのオプション(両方、オプション1またはオプション2)のみがあります。それぞれはTRのクラスに組み込まれています。
ページングを簡略化するため、結果を3つの配列にフィルタリングしたいと思います。すべて1、オプション1の場合は1、オプション2の場合は1を入力し、tbodyを行で置き換えます。
私はそれが正常に機能していない、次のコードを持っている:次のHTML(表)で
<div id="edit-network" class="form-radio">
<div class="form-item form-type-radio form-item-network">
<input id="edit-network-all" class="form-radio" type="radio" name="network" value="all" checked="checked">
<label class="option" for="edit-network-all">All </label>
</div>
<div class="form-item form-type-radio form-item-network">
<input id="edit-network-access" class="form-radio" type="radio" name="network" value="access">
<label class="option" for="edit-network-access">Access </label>
</div>
<div class="form-item form-type-radio form-item-network">
<input id="edit-network-select" class="form-radio" type="radio" name="network" value="select">
<label class="option" for="edit-network-select">Select </label>
</div>
</div>
:次のHTML(選択)して
var trHTML = $("#resultsBody").html();
var newTable = trHTML.filter(function() { return $(this).css("display") == "none" })
$('#resultsBody').empty().append(trHTML);
を
<div class="result">
<table id="results" width="100%" summary="Dentist search results" title="Dentist search results">
<tbody id="resultsBody">
<tr id="row1" class="both odd" style="display: table-row;">
<th id="this-data">Heading</th>
<th id="that-data">Heading</th>
<th id="other-data">Heading</th>
</tr>
<tr id="row2" class="option2 odd" style="display: table-row;">
<td headers="this-data">something</td>
<td headers="that-data">more data</td>
<td headers="other-data">other data</td>
<tr id="row3" class="option1 odd" style="display: table-row;">
<tr id="row4" class="both odd" style="display: table-row;">
...
...
<tr id="row100" class="both" style="display: none;">
</tbody>
</table>
</div>
提案がありますか?プラグインは解決策ではありません。これは非常に特殊な設計仕様に対応する必要があるので、私はこの獣の腸にしか取り組んでいません。
ありがとうございます!
は編集で私の質問をクリアしようとした大規模なデータセットの上に遅くなります。それが以前よりもはっきりしているかどうかは分かりません。 – user1214670
全く違った方向から来ることに決めました。よりよい方法があるという答えに私は同意します。ありがとう! – user1214670