Como verifico se todas as caixas de seleção class="abc"
estão marcadas?
Preciso verificar todas as vezes que uma delas é marcada ou desmarcada. Faço isso ao clicar ou alterar?
Eu acho que a maneira mais fácil é verificar esta condição:
$('.abc:checked').length == $('.abc').length
Você pode fazer isso toda vez que uma nova caixa de seleção estiver marcada:
$(".abc").change(function(){
if ($('.abc:checked').length == $('.abc').length) {
//do something
}
});
length
não é um funcion eu acho que você quis dizer ..size()
length
, mas nunca deixo de esquecer que é uma propriedade e não um método. Corrigidofonte
$('input.abc').not(':checked').length === 0
.Você pode usar
change()
Tudo o que isso fará é verificar se o número total de
.abc
caixas de seleção corresponde ao número total de.abc:checked
.Exemplo de código no jsfiddle .
fonte
filter
é uma boa solução para um grupo de caixas de seleção, muito obrigado.fonte
Parte 1 da sua pergunta:
EDITAR:
A resposta (http://stackoverflow.com/questions/5541387/check-if-all-checkboxes-are-selected/5541480#5541480) acima provavelmente é melhor.
fonte
O critério de pesquisa é um destes:
Você provavelmente deseja se conectar ao evento de mudança.
fonte
Como alternativa, você também pode ter usado every ():
fonte
Uma solução independente de classe
fonte
Foi assim que consegui isso no meu código:
fonte