1

同じクラスの 2 つのテーブルがあるとします。唯一の違いは列の数です。

<table class="lives prono_live">
    <tr>
        <td>1</td>
        <td>2</td>
        <td>3</td>
        <td>4</td>
    </tr>
</table>

<table class="lives prono_live">
    <tr>
        <td>1</td>
        <td>2</td>
        <td>3</td>
        <td>4</td>
        <td>5</td>           
    </tr>
</table>

各テーブルの TD 番号を 1 回のループで取得する jQuery 関数が必要です。

私はこのコードを作成しました:

$( '.lives.prono_live' ).each(function( index ) {
    alert($('.lives.prono_live td').length);
});

このコードは良くありません。部分的にです。

このコードの機能:

  • 値が 9 と 9 の 2 つの警告ボックスを表示します

私が持ちたいもの:

  • 値が 4 と 5 の 2 つの警告ボックスを表示します

誰でもこれを行う方法を知っていますか?

4

4 に答える 4

1

tdsループ内にクラスセレクターがあるため、コードがすべてカウントされているため、参照を$('.lives.prono_live td')使用する$(this)と機能するはずです..

これを試して

$( '.lives.prono_live' ).each(function( index ) {
  alert($(this).find('td').length); 
});

ここでフィドル

于 2013-03-14T14:28:10.557 に答える
0

を使用する必要がありますthis。それ以外の場合は、クラス セレクターで両方を取得します。

$( '.lives.prono_live' ).each(function( index ) {
    alert($(this).find('td').length);
});
于 2013-03-14T14:28:49.143 に答える
0

これを試して...

$(".lives.prono_live").each(function() {
    alert($("td", this).length);
});
于 2013-03-14T14:29:15.593 に答える
0

$.each() ループ内では、「現在の」要素を $(this) でターゲットにする必要があります。

$( '.lives.prono_live' ).each( function( index ) {
    alert( $( this ).find( 'td' ).length );
});
于 2013-03-14T14:31:07.860 に答える