4

jQueryを使用して、同じテーブル内の別のtdのテキストに基づいて、カウントダウンタイマー(これを使用http://keith-wood.name/countdown.html )をtdに追加しようとしています。

たとえば、私のテーブルは次のようになり、ステータス td に「Received」というテキストが含まれている場合、タイマーを time_remaining td に追加したいと考えています。

<table>
    <tr>
        <td class="status">Completed</td>
       <td class="time_received"></td>
       <td class="time_remaining"></td>
    </tr>
    <tr>
        <td class="status">Received</td>
        <td class="time_received"></td>
        <td class="time_remaining"></td>
    </tr>        
</table>

そして、私のjQueryは現在以下のようになっていますが$(this).next()、time_received tdにのみタイマーを追加するものを使用していますが、time_remaining tdに追加する必要があります.代わりに何を使用でき.next()ますか? どんな助けでも大歓迎です。

 var newCount = new Date(); 
 newCount.setMinutes(newCount.getMinutes() + 30);
 $('td.status:contains(Received)').each(function() {
   $(this).next().countdown({
        until: newCount, 
        format: 'M',
        layout: "{mn} min"
        });
​});​
4

3 に答える 3

2

.next()セレクターを取るオーバーロードがあるため、次を使用できます。

var newCount = new Date(); 
newCount.setMinutes(newCount.getMinutes() + 30);
$('td.status:contains(Received)').each(function() {
    $(this).next(".time_remaining").countdown({
        until: newCount, 
        format: 'M',
        layout: "{mn} min"
    });
});

ここを参照してください: JQuery .next()

于 2012-11-21T20:57:36.837 に答える
2

セレクターを next に渡し、インデックスを使用してどれを指定するかを指定できます。この場合、time_remaining クラスを持つ兄弟は 1 つだけなので、同じです。

.next(".time_remaining")[0]

または、常に2番目の兄弟が必要な場合は、次のことができます

.nextAll()[1]
于 2012-11-21T20:57:48.470 に答える
0

引き続き .next() を使用できます。必要な td のセレクターを渡すだけです。

$(this).next('.time_remaining').countdown({});

詳細については、ドキュメントを参照してください: http://api.jquery.com/next/

于 2012-11-21T20:57:56.713 に答える