0

このコードを実行すると、

var waitRow = $(this).parent().parent().next().get(0);
$(waitRow).children('td:nth-child(2)').html('some text').toggle();

トグルは呼び出されません。

代わりに次のコードを書くと、うまくいきます。なんで?

var waitRow = $(this).parent().parent().next().get(0);
$(waitRow).children('td:nth-child(2)').html('some text');
$(waitRow).toggle();
4

2 に答える 2

4

waitRow ではなく子要素を切り替えている.end()ため、これに使用できると思います。

$(waitRow).children('td:nth-child(2)').html('some text').end().toggle();

親に戻ること。または、.parent()再度使用してください。

参照: http://docs.jquery.com/Traversing/end

于 2009-10-20T07:29:28.837 に答える
0

children('td:nth-child(2)')最初のものは、ラップされたセットの最初のアイテムを切り替えようとします。html() メソッドは、コレクション全体ではなく、最初に一致したアイテムを返します。

2 つ目は、行全体を切り替えます。

于 2009-10-20T07:30:28.597 に答える