我有一种情况需要向表中添加一个类,但前提是该表位于 ID 为“mydiv”的 div 内,并且表中有一行包含 元素,其中 href 包含术语“myref”,包括引号。这在 jQuery 中容易吗?如果可以,我该怎么做?我只是不知道如何在向前和向后引用其他元素的同时更改元素。
我尝试了以下方法,但它似乎不起作用(我对 jQuery 比较陌生,您可能会从下面看到):
$('.mydiv').find('td').find('a[href]').contains('myref').parent.parent.addClass('myclass')
下面的 html 片段模拟了我的情况(我无法更改 html,只需添加一些 javascript 和 css):
<div id='mydiv'>
<a href='blahblah'>Some text</a>
<table>
<tbody>
<tr>
<td><a href="some href">Some text</a></td>
<td><a href="javascript:some javascript containing 'myref' in quotes">Some text</a></td>
</tr>
</tbody>
</table>
<table>
<tbody>
<tr>
<td><a href="some href">Some text</a></td>
<td><a href="javascript:some javascript without match">Some text</a></td>
</tr>
</tbody>
</table>
</div>
<div id='otherdiv'>
<table>
<tbody>
<tr>
<td><a href="some href">Some text</a></td>
<td><a href="javascript:some javascript containing 'myref' in quotes">Some text</a></td>
</tr>
</tbody>
</table>
</div>
第一个表需要获取新类,第二个和第三个表不需要。
最佳答案
要实现这一点,您可以使用 has()
方法来查找 table
元素,其中包含所需的 a
以及 'attribute contains' 选择器以使用 myref
获取 href
。试试这个:
$('#mydiv table').has('a[href*="myref"]').addClass('myclass');
关于javascript - 将类添加到包含具有指定 href 的 <a> 的 div 中的表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35359179/