jquery hasclass用于多标记

时间:2014-07-05 09:43:10

标签: jquery class

<span class="c1 c2"></span>
<span class="c1"></span>
<span class="c1 c2"></span>
<span class="c1 c2"></span>
<span class="c1"></span>
<span class="c1"></span>
<span class="c1 c2"></span>
<span class="c1"></span>
<span class="c1 c2"></span>

我有多个span标签,如果所有标签都有c2类,我想要测试,然后提醒。

if($('.c1').hasClass('c2'))
{
alert('ok all');
}
else
alert('not all');

4 个答案:

答案 0 :(得分:2)

检查长度,因为如果集合中的任何元素具有类

,则hasClass将返回true
if( $('.c1').length === $('.c1.c2').length ) {
    alert('ok all');
} else {
    alert('not all');
}

答案 1 :(得分:2)

您可以运行每个循环来检查类c1是否有c2

$(".c1").each(
    function(){
        if(!$(this).hasClass("c2")){
            console.log("not all");
            return false;
        }
    });

fiddle

答案 2 :(得分:0)

你可以使用$(“[class $ = c2]”)选择所有类名以'c2'结尾的元素。看看http://api.jquery.com/category/selectors/,您可以使用许多其他变体,例如:

[class*=c2] will select elements whose classname contains 'c2'
[class~=c2] will select elements whose classname has the word 'c2' (delimited with spaces)
[class$=c2] will select elements whose classname ends in 'c2'

答案 3 :(得分:0)

一个简单的方法:

if ($(".c1:not(.c2)").length == 0) {
    alert("ok all");
}