1

次のように複数の nth-childs を一度に選択できる方法はありますか?

    $("#table").find("tr > :not(td:nth-child(1,3,5))");

うまくいかない

各行のすべての td を選択したいが、列 1,3,5 は選択したくない (これは任意の組み合わせにすることができる)。

これを行う方法はありますか?クラス名を割り当てることができません。

助けてくれてありがとう!

アップデート:

テーブルのすべての行を検索したいが、一部の列を除外したい。

私は今このコードを持っています:

    elem.keyup(function() {

    $(options.table).find("tr").hide();
    var data = this.value.split(" ");
    var jo = $(options.table).find("tr > :not(td:nth-child("+cols+"))");

    $.each(data, function(i, v){

    jo = jo.filter(":containsIgnoreCase('"+v+"')");

    });

    jo.parent().show();
    });

単一の値を渡すと機能しますが、複数の列を除外したいです。

ありがとう

4

1 に答える 1

1

あなたの例から、あなたは奇数を除外しようとしているように見えます。試す:

$("#table").find("tr > :not(td:nth-child(odd))");

ただし、偶数を選択する方が効率的かもしれません。

$("#table").find("tr > td:nth-child(even)");

n番目の子で数式を使用することもできます。詳細については、このリンクを参照してください。

さて、以下のコメント/質問の説明に従って、ここに別の解決策があります。

$("#table").find("tr > td").filter(function(index){
   return index == 1 || index == 2 || index == 5;   
});
于 2012-05-28T22:47:01.370 に答える