Não sou especialista em jQuery, mas tentei criar um pequeno script para meu aplicativo. Quero marcar todas as caixas de seleção, mas não está funcionando corretamente.
Primeiro tentei usar attr
e depois tentei com, prop
mas estou fazendo algo errado.
Eu tentei isso primeiro:
$("#checkAll").change(function(){
if (! $('input:checkbox').is('checked')) {
$('input:checkbox').attr('checked','checked');
} else {
$('input:checkbox').removeAttr('checked');
}
});
Mas isso não funcionou.
Próximo: Funcionou melhor do que o código acima
$("#checkAll").change(function(){
if (! $('input:checkbox').is('checked')) {
$('input:checkbox').prop('checked',true);
} else {
$('input:checkbox').prop('checked', false);
}
});
Ambos os exemplos não funcionam.
JSFiddle: http://jsfiddle.net/hhZfu/4/
javascript
jquery
checkbox
Ivan
fonte
fonte
Respostas:
Você precisa usar .prop () para definir a propriedade marcada
Demo: Fiddle
fonte
ctrl+r
e clico na caixa de seleção,checkAll
ele não me marca tudo. Depois disso, devo verificar novamente para ter sucesso. Então eu preciso clicar 2x nocheckAll
que não funciona no clique único (um)? Eu copio, colo esse código e faço a funçãocheckAll()
e na caixa de seleção que definoonclick="return checkAll()"
<elementtag id="someID" onclick="javascript code here"
--- Em vez disso, use jQuery:$('#someID').click(function() { checkAll() });
not(this).prop
?Basta usar a
checked
propriedade decheckAll
e usar prop () em vez de attr para propriedade marcadaDemonstração ao vivo
Use prop () em vez de attr () para propriedades como verificado
Você tem o mesmo id para caixas de seleção e deve ser exclusivo . É melhor usar alguma classe com as caixas de seleção dependentes para que não inclua as caixas de seleção que você não deseja. Como
$('input:checkbox')
irá selecionar todas as caixas de seleção na página. Se sua página for estendida com novas caixas de seleção, elas também serão selecionadas / desmarcadas. Que pode não ser o comportamento pretendido.Demonstração ao vivo
fonte
Uma solução completa está aqui.
Html deve ser:
Uma única caixa de seleção nas três caixas marcadas será marcada e desmarcada.
Espero que isso ajude alguém como ajudou a mim.
JS Fiddle https://jsfiddle.net/52uny55w/
fonte
$("#checkedAll").change
função mais curta alterando-a para:var val = this.checked; $(".checkSingle").each( function() { this.checked=val; });
isAllChecked
variável paraisThereUnchecked
ouunChecked
assim será mais descritivo sobre o que a variável foi usada.Eu acho que quando o usuário seleciona todas as caixas de seleção manualmente, todas as caixas de seleção devem ser marcadas automaticamente ou o usuário desmarca uma delas de todas as caixas de seleção selecionadas e, em seguida, todas as caixas devem ser desmarcadas automaticamente. aqui está meu código ..
fonte
Por que você não tenta isso (na 2ª linha onde 'form #' você precisa colocar o seletor apropriado do seu formulário html):
Seu html deve ser assim:
Espero que ajude.
fonte
HTML:
jQuery:
Demo: FIDDLE
fonte
Maneira mais simples que conheço:
$('input[type="checkbox"]').prop("checked", true);
fonte
fonte
Para as pessoas que ainda procuram um plug-in para controlar as caixas de seleção por meio de um que é leve, tem suporte imediato para UniformJS e iCheck e fica desmarcado quando pelo menos uma das caixas de seleção controladas está desmarcada (e é marcada quando todas as caixas de seleção controladas são marcadas curso) Eu criei um plugin jQuery checkAll .
Fique à vontade para verificar os exemplos na página de documentação .
Para este exemplo de pergunta, tudo que você precisa fazer é:
Isso não é claro e simples?
fonte
E jquery
fonte
Você pode executar
.prop()
os resultados de um Seletor jQuery diretamente, mesmo se ele retornar mais de um resultado. Assim:$("input[type='checkbox']").prop('checked', true)
fonte
Normalmente, você também deseja que a caixa de seleção mestre seja desmarcada se pelo menos 1 caixa de seleção escravo estiver desmarcada e seja marcada se todas as caixas de seleção escravo estiverem marcadas:
E se você quiser habilitar qualquer controle (por exemplo,
Remove All
botão ou umAdd Something
botão), quando pelo menos uma caixa de seleção estiver marcada e desabilitar quando nenhuma caixa de seleção estiver marcada:fonte
HTML
Código jQuery
Ver demonstração
Clique aqui para ver a demonstração
fonte
use .prop () para obter o valor de uma propriedade
fonte
Eu sei que há muitas respostas postadas aqui, mas gostaria de postar isso para otimização de código e podemos usá-lo globalmente.
eu tentei o meu melhor
Espero que isso ajude!
fonte
fonte
checkalléo id de todas as caixas de seleção e cb-child é o nome de cada caixa de seleção que será marcada e desmarcada depende do evento checkall click
fonte
* SCRIPT JAVA PARA SELECIONAR TODAS AS CAIXAS DE VERIFICAÇÃO *
Melhor solução .. Experimente
fonte
Você pode usar o código simples abaixo:
Exemplo para usar:
fonte
por favor mude a linha acima para
na resposta do SSR e está funcionando perfeitamente. Obrigado
fonte
fonte
fonte
html:
javascript:
fonte
fonte
fonte
Clique no gatilho
OU
OU
fonte