0

特定の ID を持つセルを含むテーブル全体を取得しました。たとえば、「2012-01-01_841241」などです。日付、次にいくつかの数字。

テーブルをフィルタリングしたいので、リクエストを送信して、たとえば表示する必要がある 3 つの数値を取得します。

ID にこれらの番号が含まれていないすべてのセルを非表示にしたい - すべてのセルを反復処理して、ID が私の ID 文字列と一致するかどうかを確認する以外の方法はありますか? (それは高価に見えます)。

だから、私はそれを避けようとしています(特に、someNumbersのテーブルがあるとき:)):

$('td').each(function(){
    if($(this).attr("id") != someNumber) $(this).hide();
})

ありがとう!

4

3 に答える 3

0

このコードを使用します:

$('td:not([id="' + someNumber + '"])').hide();
于 2012-12-30T03:44:41.743 に答える
0

次のようなことを考えましたか: いつでもすべての tds を非表示にして、表示したいものだけを表示することができます

var id = getCurrentIdNotToHide();
$('td#'+id).show();

しかし、これがより良い解決策であるかどうかはわかりません

于 2012-12-30T03:06:06.037 に答える
0

ここにあなたがそれを行う方法があります(jsFiddle here):

基本的に、すべてを非表示にしてから、必要なものを表示できます。

 $("#myTable td").hide();
showCells("2012-01-01_841242", "2012-01-01_841247");

function showCells() {
 for (var i = 0; i < arguments.length; i++)   
 {
     $("#" + arguments[i]).show();
 }
}

ただし、テーブルでこれを行う場合の問題は<td>、さまざまなタグ内のタグの数が不均等<tr>になる可能性があるため、別のレイアウト方法を見つける必要がある場合があることです。

于 2012-12-30T03:08:21.740 に答える