我正在使用Bootstrap开关https://github.com/nostalgiaz/bootstrap-switch并在表格中有几个开关。
当切换开关时,我检查开关的状态并具有基本的if条件。当data.value为false时,开关已关闭。我尝试运行另一个条件来检查表中的任何开关是否具有switch-on
类,如果是,则隐藏高级图表中的系列。这没有按预期工作。我很确定我的选择器没问题div.make-switch > div
正在选择第一个嵌套div,它有类switch-on
或switch-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中具有类.switch-off
<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"> </label><span class="switch-right switch-mini">OFF</span></div></div>
On state在嵌套div中有类.switch-on
<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"> </label><span class="switch-right switch-mini">OFF</span></div></div>
答案 0 :(得分:4)
试试这个:
if ($('div.make-switch > div.switch-on').length) {
如果存在与选择器匹配的元素,length
属性将返回“truthy”结果。