jQuery检查页面上的任何div在if语句中是否有特定的类

jQuery检查页面上的任何div在if语句中是否有特定的类,jquery,if-statement,Jquery,If Statement,我正在使用引导开关,在一个表中有几个开关 当切换开关时,我检查开关的状态,并有一个基本的if条件。当data.value为false时,开关已关闭。我尝试运行另一个条件来检查表中是否有任何开关,是否打开了开关类,如果是,则在高位图表中隐藏一个系列。这不是预期的效果。我很确定我的选择器是ok的div.make-switch>div正在选择第一个嵌套的div,它的类开关为on或开关为off 代码有什么问题?我的第二个if条件是否应该在每次开关关闭时触发,并检查是否有任何开关打开 谢谢 打开和关闭状态

我正在使用引导开关,在一个表中有几个开关

当切换开关时,我检查开关的状态,并有一个基本的if条件。当data.value为false时,开关已关闭。我尝试运行另一个条件来检查表中是否有任何开关,是否打开了
开关
类,如果是,则在高位图表中隐藏一个系列。这不是预期的效果。我很确定我的选择器是ok的
div.make-switch>div
正在选择第一个嵌套的div,它的类
开关为on
开关为off

代码有什么问题?我的第二个if条件是否应该在每次开关关闭时触发,并检查是否有任何开关打开

谢谢

打开和关闭状态呈现的HTML如下所示

if(data.value == true){
// Switch is on
}
else if (data.value == false){
// Switch is off

    if ($('div.make-switch > div').hasClass('switch-on')){

        series.hide();
    }
}
关闭状态具有类
。在嵌套的div中关闭

<div class="make-switch switch-mini has-switch"><div class="switch-off switch-animate"><input name="" id="create-switch" type="checkbox"><span class="switch-left switch-mini">ON</span><label class="switch-mini" for="create-switch">&nbsp;</label><span class="switch-right switch-mini">OFF</span></div></div>
<div class="make-switch switch-mini has-switch"><div class="switch-on switch-animate"><input name="" id="create-switch" type="checkbox"><span class="switch-left switch-mini">ON</span><label class="switch-mini" for="create-switch">&nbsp;</label><span class="switch-right switch-mini">OFF</span></div></div>
试试这个:

if ($('div.make-switch > div.switch-on').length) {
如果存在与选择器匹配的元素,则
length
属性将返回“truthy”结果。

尝试以下操作:

if ($('div.make-switch > div.switch-on').length) {

如果存在与选择器匹配的元素,则
length
属性将返回一个“truthy”结果。

这与OP的代码不同:
If($('div.make-switch>div').hasClass('switch-on'))
?@a.Wolff我也很好奇为什么我的代码不能正常工作。Jason P这确实有效,我一回来就把它标记为答案allowed@A.Wolff说得好,他的代码有效:。我最初假设
hasClass
检查了集合中的第一项,但这似乎是一个错误的假设。@JasonP.hasClass()返回true,如果至少有一个元素匹配选择器,.is()工作相同。这与OP的代码有什么不同可能会让人困惑:
if($('div.make-switch>div').hasClass('switch-on'))
?@A.Wolff我也很好奇为什么我的代码不能正常工作。Jason P这确实有效,我一回来就把它标记为答案allowed@A.Wolff说得好,他的代码有效:。我最初假设
hasClass
检查了集合中的第一项,但这似乎是一个错误的假设。@JasonP.hasClass()返回true,如果至少有一个元素匹配选择器,.is()工作相同。这肯定会让人困惑