0

クラスに基づいて tds を非表示にすることが可能かどうかを知りたいです。このテーブルがあるとしましょう:

<table id="newspaper-a">
    <tr>
       <td class="1">1</td>
       <td class="2">1</td>
       <td class="3">1</td>
       <td class="4">1</td>
       <td class="5">1</td>
       <td class="td1">1</td>
       <td class="td2">2</td>
       <td class="td3">3</td>
       <td class="td4">4</td>
       <td class="td5">5</td>
    </tr>
</table>

class="tdx" ですべての tds を非表示にしたいのですが、ページの読み込み時に JQuery を使用してこれを実現するにはどうすればよいですか?

4

2 に答える 2

3

セレクターで始まる属性を使用できます

$('#newspaper-a td[class^=td]').hide()

デモ:フィドル

注: 欠点があります。別のクラスをtdlikeに追加する<td class="some td5">5</td>と、これは失敗します。

サードパーティのプラグインを使用しない別のアプローチ

$('#newspaper-a td').filter(function(idx, el){
    var classes = (this.className || '').split(' ');
    var filter = false, regex = /^td\d+$/;
    $.each(classes, function(idx, value){
        if(regex.test(value)){
            filter = true;
            return false;
        }
    });
    return filter;
}).hide();

デモ:フィドル

于 2013-08-19T11:35:15.760 に答える
0

このようなことができます

$('td[class^="td"]').hide();

tdセレクターを使用するclassと、クラス td1、td2 などのすべての td が非表示になります。

于 2013-08-19T11:38:32.637 に答える