jQuery 查找与条件匹配的元素
jQuery find elements that match criteria
有一个棘手的问题,我想向<td>
的所有父<tr>
添加一个class
,这些父其中有一个<span>
或一个<div>
元素。所以我有一个带有标记的表格,如下所示:
<table>
<tr>
<td>
</td>
<td>
</td>
<td>
<div>
</div>
</td>
<td>
</td>
</tr>
<tr>
<td>
<span></span>
</td>
<td>
</td>
<td>
<div>
</div>
</td>
<td>
</td>
</tr>
</table>
所以我希望具有<span>
或<div>
的<td>
有一个类由 jQuery 添加到它们中......
我似乎无法弄清楚如何遍历所有<td>
以检查它们的后代,然后将类添加到那些内部有<span>
或<div>
的类中......这可能吗?
感谢您对它的任何光照!快把我逼疯了!
您可以使用 .has() 检查tr
是否有 div
或span
作为后代:
$('table tr').has('div,span').addClass('someClass');
检查以下代码片段:
$('table tr').has('div,span').addClass('someClass');
.someClass {
background-color: red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr>
<td>td 1</td>
<td>td 2</td>
<td>
<div>div</div>
</td>
<td>td 3</td>
</tr>
<tr>
<td>td 1</td>
<td>td 2</td>
<td>td 3</td>
<td>td 4</td>
</tr>
<tr>
<td><span>span</span>
</td>
<td>td 1</td>
<td>
<div>div</div>
</td>
<td>td 2</td>
</tr>
<tr>
<td>td 1</td>
<td>td 2</td>
<td>td 3</td>
<td>td 4</td>
</tr>
</table>
相关文章:
- 如何附加<ul><李>元素位于某个特定条件的父元素列表之间
- 正则表达式条件来删除元素
- KnockoutJS:为虚拟元素使用嵌套的条件if语句
- 根据特定条件使用ng显示/ng隐藏来显示/隐藏元素
- Jquery:当两个或多个条件为true时,选择一个元素
- 从json数组中查找满足条件的特定元素的值
- ng重复向一个元素添加条件类
- 如何使用jQuery绕过具有指定类和两个条件的元素的函数
- 如何用d3有条件地移除元素
- AngularJS ng-if指令在移除元素之前,即使条件为false,也会短暂呈现
- 量角器 - 根据条件识别嵌套下拉元素时超时
- 在元素中搜索字符串,然后将其放入条件语句中
- jQuery 查找与条件匹配的元素
- if数组元素在for循环内部有条件
- 如果满足条件,则使用JQuery向元素添加链接
- 如何用angular js对HTML元素的id属性进行条件设置
- 模板中的条件元素
- Undercore findWhere函数,用于查找与条件a或b匹配的元素
- 使用 jQuery 克隆表单,并添加和删除元素条件
- 零元素条件中的错误“;如果“;未捕获的类型错误:无法读取属性'1'为null