jQuery - 如果至少有一个元素具有 class 不要继续执行函数
jQuery - if at least one of the elements has class DON'T proceed with function
所以我有一个具有相同 classes 的元素列表,我希望 jQuery 知道,如果至少有一个元素 hasClass('invalid' ) 不执行函数,所以所有元素都不应该有 class 以便 jQuery 继续。
我试过 each 函数,但在那种情况下,如果只有一个元素没有 class,他就可以了,并且我需要所有元素都没有 class .invalid.
例如,如果这样的列表至少有 class .invalid,jQuery 不应该做任何事情,如果所有 classes 没有那个 class .invalid (else) 而不是做某事。
<p class="someElement">1</p>
<p class="someElement">2</p>
<p class="someElement invalid">3</p>
<p class="someElement">4</p>
<p class="someElement">5</p>
<p class="someElement">6</p>
关于如何做到这一点有什么建议吗?
//use filter to check if any element matches a case
if ($('.someElement').filter('.invalid').length < 1) {
//do stuff
}
//or hasClass as it loops as part of it's logic
// https://j11y.io/jquery/#v=2.1.3&fn=jQuery.fn.hasClass
if (!$('.someElement').hasClass('.invalid')) {
//do stuff
}
嗯……为什么不看看元素是否有 class?
对于您所说的,如果您只有一个具有 class 的函数,那么您不必执行该函数,在这种情况下,布尔值就可以了。
如果其中一个元素具有 class 无效只是 return false 并且在它之后验证是否为 false 或 true 以执行所述功能。
希望能帮到你。
编码愉快=}
假设您已经在变量中包含元素,您的 .hasClass
方法几乎是正确的,因为该函数 确定是否为任何匹配元素分配了给定的 class :
如果它 returns true
如果有一个或多个,那么它将 return false
如果 none 做,所以简单的布尔否定将匹配这种情况:
var elementList = $('p.someElement');
if (!elementList.hasClass('invalid')) {
// none of the elements had that class
}
所以我有一个具有相同 classes 的元素列表,我希望 jQuery 知道,如果至少有一个元素 hasClass('invalid' ) 不执行函数,所以所有元素都不应该有 class 以便 jQuery 继续。
我试过 each 函数,但在那种情况下,如果只有一个元素没有 class,他就可以了,并且我需要所有元素都没有 class .invalid.
例如,如果这样的列表至少有 class .invalid,jQuery 不应该做任何事情,如果所有 classes 没有那个 class .invalid (else) 而不是做某事。
<p class="someElement">1</p>
<p class="someElement">2</p>
<p class="someElement invalid">3</p>
<p class="someElement">4</p>
<p class="someElement">5</p>
<p class="someElement">6</p>
关于如何做到这一点有什么建议吗?
//use filter to check if any element matches a case
if ($('.someElement').filter('.invalid').length < 1) {
//do stuff
}
//or hasClass as it loops as part of it's logic
// https://j11y.io/jquery/#v=2.1.3&fn=jQuery.fn.hasClass
if (!$('.someElement').hasClass('.invalid')) {
//do stuff
}
嗯……为什么不看看元素是否有 class? 对于您所说的,如果您只有一个具有 class 的函数,那么您不必执行该函数,在这种情况下,布尔值就可以了。
如果其中一个元素具有 class 无效只是 return false 并且在它之后验证是否为 false 或 true 以执行所述功能。
希望能帮到你。
编码愉快=}
假设您已经在变量中包含元素,您的 .hasClass
方法几乎是正确的,因为该函数 确定是否为任何匹配元素分配了给定的 class :
如果它 returns true
如果有一个或多个,那么它将 return false
如果 none 做,所以简单的布尔否定将匹配这种情况:
var elementList = $('p.someElement');
if (!elementList.hasClass('invalid')) {
// none of the elements had that class
}