1

テーブルにクラスを追加しようとしています。

<table>>> <tbody>>> <tr>>> <td>>> <table>>> <tbody>_ <tr>_ <td>_<span class="subcategory">

したがって、基本的には、span.subcategoryに基づいて初期テーブルにクラスを追加したいと思います。私はこれを持っています:

$('span.subcategory').parent().closest("table").addClass('myClass');

しかし、それは2番目のテーブルにのみ行きます。

4

4 に答える 4

2
$('span.subcategory').parents('table:last')
于 2012-01-03T23:51:45.263 に答える
1

外側のテーブルに移動するには:

$('span.subcategory').parents('table').eq(1).addClass('myClass');

JSフィドルデモ

または、おそらく:

$('span.subcategory').parents('table:has("table span.subcategory"):first').addClass('myClass');

JSフィドルデモ

于 2012-01-03T23:47:57.530 に答える
1
$('span.subcategory').closest('table').parent().closest('table').addClass('myClass');

2番目の(外側の)テーブルまでのみDOMツリーをトラバースするため、これはより効率的であると思います。

于 2012-01-03T23:52:54.457 に答える
0

しますか

$('span.subcategory').closest('table')
    .parent().closest('table')
    .addClass('myClass');`  

仕事?

または:

$('table:has(table:has(span.subcategory))').addClass('myClass');
于 2012-01-03T23:47:21.153 に答える