Jquery 使用hasClass检测包含同一类的多个组元素
我有一个问题让我困惑了好几天。这是关于如何使用.hasClass来检测所有ul组,其中至少有一个类处于活动状态,以便结合jQuery验证继续表单Jquery 使用hasClass检测包含同一类的多个组元素,jquery,Jquery,我有一个问题让我困惑了好几天。这是关于如何使用.hasClass来检测所有ul组,其中至少有一个类处于活动状态,以便结合jQuery验证继续表单 <form id="rate"> <ul class="scoreList listRe listR2"> <li><a href="#">5</a></li> <li><a href="#">4</a></li>
<form id="rate">
<ul class="scoreList listRe listR2">
<li><a href="#">5</a></li>
<li><a href="#">4</a></li>
<li><a href="#">3</a></li>
<li><a href="#">2</a></li>
<li><a href="#">1</a></li>
</ul>
<ul class="scoreList listRe listR2">
<li><a href="#">5</a></li>
<li><a href="#">4</a></li>
<li><a href="#">3</a></li>
<li><a href="#">2</a></li>
<li><a href="#">1</a></li>
</ul>
<ul class="scoreList listRe listR3">
<li><a href="#">5</a></li>
<li><a href="#">4</a></li>
<li><a href="#">3</a></li>
<li><a href="#">2</a></li>
<li><a href="#">1</a></li>
</ul>
</from>
但我在想我是否可以做以下事情:
if($('.listR1 a' && '.listR2 a' && 'listR3 a').hasClass())
{
form.submit();
}
else{
alert("You must rate all!!!");
return false;
};
你们有什么想法吗?我将非常感激
致以最良好的祝愿,
Jessie只需在选择器中使用类名,然后检查其长度。例:
if ( $('.div1.active').length > 0 && $('.div2.active').length > 0 ) {
// do stuff
}
试一试
JSFIDLE
var ul=$[class*=listR]
,button=$button
,label=$label
,激活=功能元素{
var arr=$.grepelem,函数el,i{
返回$el.finda.is.active
};
返回arr.length!==elem.length?false:true
};
label.textactiveul;
按钮,单击,功能{
ul.finda.active.toggleClassactive;
label.textactiveul;
}
切换激活
我需要列出所有类来测试长度吗?如果长度大于零,它就存在。由于选择器包含该类,因此如果该类实际上未被应用,它将返回0。试试看——它工作得很好,代码很少。
if ( $('.div1.active').length > 0 && $('.div2.active').length > 0 ) {
// do stuff
}
var ul = $("[class*=listR]")
, active = function (elem) {
var arr = $.grep(elem, function (el, i) {
return $(el).find("a").is(".active")
});
return arr.length !== elem.length ? false : true
};
$('#rate').validate({
submitHandler: function (form) {
if (active(ul)) {
form.submit();
} else {
alert("You must rate all!!!");
return false;
};
}
});