1

HTML:

<table>
 <tr>
  <td>
   <a href="#" class="nav">link</a>
  <td>
 </tr>
</table>

a.navのテキスト「リンク」を検索し、「テーブル」にID「abc」を追加します。これを試しましたが、機能しません:

$('table>tbody>tr>td>a.nav:contains("Forum Index")').parents('table').attr('id', 'newID');

(ほとんどのブラウザが自動的に追加するため、tbody)

4

2 に答える 2

5

選択基準はそれほど明確である必要はありません。実際、必要な要素だけを選択しながら、できるだけシンプルにします。単純な選択基準の方がパフォーマンスが高くなります。

$('a.nav:contains("link")').parents('table').attr('id', 'abc');
于 2009-11-01T17:51:52.310 に答える
1

はい、動作します。containsの文字列を「ForumIndex」から「link」に変更するだけで試してみましたが、テーブルのIDは変更されます。

ただし、要素のIDを実際に変更するべきではありません。可能であれば、クラスを使用してください。

于 2009-11-01T17:55:08.293 に答える