1. ホーム
  2. javascript

[解決済み] jQueryで名前を指定して要素を選択するには?

2022-03-18 06:09:07

質問

テーブルのカラムを拡張したり隠したりしたいのですが、jQueryでは <td> 要素で選択すると class でなく、その要素の name .

例えば

$(".bold").hide(); // Selecting by class works.
$("tcol1").hide(); // Selecting by name does not work.

下のHTMLに注目してください。2列目には、同じ name をすべての行で使用します。 を使用してこのコレクションを作成するにはどうしたらよいでしょうか。 name 属性を使用できますか?

<tr>
  <td>data1</td>
  <td name="tcol1" class="bold"> data2</td>
</tr>
<tr>
  <td>data1</td>
  <td name="tcol1" class="bold"> data2</td>
</tr>
<tr>
  <td>data1</td>
  <td name="tcol1" class="bold"> data2</td>
</tr>

解決方法は?

を使用することができます。 jQuery属性セレクタ :

$('td[name="tcol1"]')   // Matches exactly 'tcol1'
$('td[name^="tcol"]' )  // Matches those that begin with 'tcol'
$('td[name$="tcol"]' )  // Matches those that end with 'tcol'
$('td[name*="tcol"]' )  // Matches those that contain 'tcol'