检查一个类是否存在于一组选定的元素中
Check if a class exist within a group of selected elements
我选择了一组行,我现在试图确定它们是否包含特定的类。
我已经在hasClass
和find
上尝试过,但没有成功:
var group = $('table').find('[data-group="group1"]');
//this doesn't work, it always enters in the condition
if(group.find('.active')){
alert("Founded?");
group.addClass('green');
}
http://jsfiddle.net/kAHyA/1/我也尝试过if(group.find('.active').length)
,但仍然没有得到正确的结果:
你可以用hasClass方法做到这一点http://api.jquery.com/hasClass/
if(group.hasClass('active')){
...
}
如果你试过:
if(group.hasClass('.active')){
...
}
它肯定不起作用,注意与"。"
试试这个,
if(group.filter('.active').length)
只是想检查tr是否具有active
类并具有数据属性,因此只需一个简单的选择器就足够了。
var matches = $('table').find('.active[data-group="group1"]'); //This will give you all the trs with the attribute and class active.
if(matches.length > 0)
{
alert('Found Match');
matches.addClass('green');
}
如果你只是想直接应用class,只需链接它:
$('table').find('.active[data-group="group1"]').addClass('green');
演示你可以这样做-
if(group.is('.active')){
group.addClass('green');
}
演示--->
http://jsfiddle.net/kAHyA/6/.find()
的问题是它总是返回一个jQuery对象,这就像任何其他对象(除了null
)一样是正确的。
您要检查长度:if( group.find(".active").length > 0)
相关文章:
- 创建一组元素JointJS
- 如何检查焦点是否离开了一组元素
- 是否可以加快向DOM添加一组元素的速度
- 使用javascript在一组元素上切换类
- 如何使用jQuery查找一组元素的父元素
- 为什么 .data() 适用于一组元素,但不适用于单个元素
- 如何从一组元素中获取 ID 并保存在数组中
- 使一组元素透明,但一个除外
- 当一组元素的所有元素都具有特定值时,如何隐藏表单元素
- 如何在一组元素上触发事件
- JQuery:用另一组元素替换一组元素的优雅方式
- 如何使用 jquery 隐藏下一组元素
- 使用 Raphael JS 一次缩放一组元素
- 循环遍历一组元素 jQuery
- 在没有循环的情况下测试一组元素之间的html5数据相等性
- 为一组元素逐个设置放置阴影的动画
- 当一组元素不总是在同一个父元素中时,如何找到下一个匹配的元素
- 如何在InDesign CS5 javascript中将一组元素锚定到特定的TextFrame
- 使用jQuery将一组元素中的每一个克隆到单独的目标元素中
- 检查一个类是否存在于一组选定的元素中