1

ここで同様の質問をいくつか見ましたが、まだ機能しているようです。ページで自動的に生成されているテーブルの特定の列を非表示にしようとしています。最初の行の列ヘッダーと対応するセルを非表示にすることができましたが、残りの行で機能させる方法がわかりません。私は何が欠けていますか?

$(document).ready(function() {
    $("table.lc_Table:eq(0) tr:eq(0) th").each(function(ind,ele) {
        if( $.trim($(this).text()).match(/(Available|Order Limit)/gi) )
        {
          $("table.lc_Table:eq(0) tr th:eq("+ind+"), table.lc_Table:eq(0) tr td:eq("+ind+")").hide();
        }
    });
});

<table border="0" cellspacing="0" cellpadding="4" class="lc_Table">
<tr>
    <th class="lc_Heading">
        <p class="PaddedListHeadingsC">Ticket Class</p>
    </th>
    <th class="lc_Heading">
        <p class="PaddedListHeadingsC">Available</p>
    </th>
    <th class="lc_Heading">
        <p class="PaddedListHeadingsC">Order Limit</p>
    </th>
    <th class="lc_Heading">
        <p class="PaddedListHeadingsC">Price</p>
    </th>
</tr>
<tr class="lc_Row0">
    <td class="lc_Cell">
        <p>Attendee1</p>
    </td>
    <td align="right" class="lc_Cell">
        <p>50</p>
    </td>
    <td align="right" class="lc_Cell">
        <p>No Limit</p>
    </td>
    <td align="right" class="lc_Cell">
        <p>$0.00</p>
    </td>
</tr>
<tr class="lc_Row1">
    <td class="lc_Cell">
        <p>Attendee2</p>
    </td>
    <td align="right" class="lc_Cell">
        <p>50</p>
    </td>
    <td align="right" class="lc_Cell">
        <p>No Limit</p>
    </td>
    <td align="right" class="lc_Cell">
        <p>$0.00</p>
    </td>
</tr>

4

2 に答える 2

3

動作するはずです

$('tr').each(function(){
    $(this).find('td').eq(0).hide();
})

THとTDの両方に使用できます

$('tr').each(function(){
    $('tr').children().eq(0).hide();
})
于 2012-06-24T22:22:46.920 に答える
0

:eqは 1 つの要素のみに評価されます。代わり:nth-childに、要素の親に相対的なカウントを使用します。

于 2012-06-24T22:21:35.400 に答える