Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Jazara

Check box - habilitar e desabilitar com jquery

Recommended Posts

Boa tarde, estou criando uma listagem com checkbox que tenho aintenção de fazer o seguinte:

<strong>Exibir este banner em...</strong><br />
<div class="OpcoesPaginas">
<input name="qual_paginaA" id="qual_paginaA" type="checkbox" value="0" checked="true" /> Todas as páginas

<input name='qual_paginaB[]' id='qual_paginaB' type='checkbox' value='1' /> Home Web
<input name='qual_paginaB[]' id='qual_paginaB' type='checkbox' value='2' /> Sites
<input name='qual_paginaB[]' id='qual_paginaB' type='checkbox' value='3' /> Hospedagem
<input name='qual_paginaB[]' id='qual_paginaB' type='checkbox' value='4' /> Gestão de Conteúdos
</div>

É um esquema que se estiver selecionado a opção todas as páginas ela desabilita os demais checks que estiverem habilitados e se eu der um check em qualquer um das outras opções ele teria que desabilitar o Todas as páginas...

 

Bom, eu consegui criar o que desabilita todos os checks quando clico na opção Todas as páginas

$("#qual_paginaA").change(function(){$("#qual_paginaB:checked").removeAttr('checked');});

Porém quando aplico o outro código para se eu selecionar qualquer check diferente apenas o primeiro está desabilitando o check do todas as páginas....

$("#qual_paginaB").change(function(){$("#qual_paginaA").removeAttr('checked');});

Não sei onde estou errando, porém tenho que manter o mesmo id para os checks adicionais, visto que uso um código php para carregar as páginas criadas e não teria como ter um id diferente para cada um para conversar com o jquery, de uma forma que eu não limite, pois quero que esta ação seja possivel com 2 ou 1.000 páginas. Imagina prever isto e depois ter que refazer para ajustar.

Se alguém souber o que está faltando para funcionar ou possuir uma solução diferente e de código limpo agradeço, já não sei mais como pesquisar este problema.


Achei a solução então vou deixar a mesma aqui.

/*desmarcando seleção principal*/
$("input[type=checkbox]").click(function(){
	var ql_check = $(this).val();
	if(ql_check=="0"){$("#qual_paginaB:checked").removeAttr('checked');}else{$("#qual_paginaA:checked").removeAttr('checked');}
	});
/*desmarcando seleção principal*/

Para quem utilizar mais de uma linha de check, acredito que você precisará utilizar regras para identificar pelo id de cada conjunto de check e terá os mesmos resultados.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Jazara, blza!

 

você postou somente seu html.

 

Tem esse que é bem elegante: ( Embora vc quer que os demais fiquem desmarcados né )

 

http://wbruno.com.br/jquery/selecionar-todos-checkb-ao-clicar-em-um-selecionar-check-ao-clicar-em-linha/

 

 

Espero ter ajudado,

 

vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.