我目前有这个:
<table>
<tbody>
<tr>
<td>
<a href="http://www.google.com">Visit Website</a>
</td>
</tr>
<tr>
<td>
<a href="">Visit Website</a>
</td>
</tr>
<tr>
<td>
<a href="http://www.google.com">Visit Website</a>
</td>
</tr>
<tr>
<td>
<a href="">Visit Website</a>
</td>
</tr>
</tbody>
</table>
我需要一些javascript:
如果<a>
没有href(href =“”),则隐藏包裹它的TR。
如何使用javascript实现此目的?
答案 0 :(得分:2)
您可以使用 attribute equals selector 获取a
的{{1}}代码,然后通过 closest()
获取href=""
< /强>
tr
$('a[href=""]').closest('tr').hide();
或者您可以使用 :has()
或 has()
和 attribute equals selector 。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<table>
<tbody>
<tr>
<td>
<a href="http://www.google.com">Visit Website</a>
</td>
</tr>
<tr>
<td>
<a href="">Visit Website</a>
</td>
</tr>
<tr>
<td>
<a href="http://www.google.com">Visit Website</a>
</td>
</tr>
<tr>
<td>
<a href="">Visit Website</a>
</td>
</tr>
</tbody>
</table>
$('tr:has(a[href=""])').hide();
如果您想选择不含<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<table>
<tbody>
<tr>
<td>
<a href="http://www.google.com">Visit Website</a>
</td>
</tr>
<tr>
<td>
<a href="">Visit Website</a>
</td>
</tr>
<tr>
<td>
<a href="http://www.google.com">Visit Website</a>
</td>
</tr>
<tr>
<td>
<a href="">Visit Website</a>
</td>
</tr>
</tbody>
</table>
属性的a
代码,则可以使用 :not()
选择器,例如:
href
答案 1 :(得分:1)
只需尝试
$('a[href=""]').parent().parent().hide();
或
$('a[href=""]').closest("tr").hide();
只需尝试
$('a[href=""],a:not([href])').parent().parent().hide();
或
$('a[href=""],a:not([href])').closest("tr").hide();
答案 2 :(得分:1)
https://jsfiddle.net/现在看一下它的工作情况,请检查