如何根据属性值选择特定的tr

sor*_*tof -2 jquery

我得到这个表格html:

<table id="mytable">
<thead>
<tr role="row">
<th aria-controls="dog"></th>
<th aria-controls="cat"></th>
<th aria-controls="fish"></th>
</tr>
</thead>
</table>
Run Code Online (Sandbox Code Playgroud)

我想选择属性为"狗"的th.

我试试这个:

$("th").attr("aria-controls"="dog");
Run Code Online (Sandbox Code Playgroud)

什么是上帝的方式呢?
如果我可以避免在所有tr上循环,它会更好.

谢谢 :)

Ath*_*ace 11

您可以按属性的值等于这样选择元素:

var element = $('th[aria-controls="dog"]')
Run Code Online (Sandbox Code Playgroud)

有关属性等于选择器的更多信息,请访问:https://api.jquery.com/attribute-equals-selector/

作为旁注,th甚至不需要或要测试的属性值.您可以简单地选择具有该属性的所有元素,而不管其值如何:

var element = $('[aria-controls]')
Run Code Online (Sandbox Code Playgroud)

有很多种方法可以使用这个选择器.您甚至可以找到具有该属性的元素,该元素包含该值的开始,结束或包含.

从以下开始:var element = $('[aria-controls|="dog"]')ex:dogggg

结束于:var element = $('[aria-controls$="dog"]')ex:adog

包含:var element = $('[aria-controls*="dog"]')ex:bdogb

不相等:var element = $('[aria-controls!="dog"]')例如:猫

有关属性选择器的更多信息,请访问:https://api.jquery.com/category/selectors/attribute-selectors/