Ir para conteúdo
Fórum Script Brasil
  • 0

Duvida - JavaScript (Resolvido)


didonsom

Pergunta

Olá Pessoal, Bom dia!

Sou novo em programação web e estou com um problema. Estou desenvolvendo um sistema em php e utilizo o seguinte script abaixo que obtive na net para validar o click dos checkbox.

Então por exemplo, se eu clicar no checkbox não possui, os demais checks serão desmarcados etc, até ai tudo bem a função funciona normalmente, coloco ela no meu <head></head> do form index.php

 

<!-- script  utilizado para marcar e desmarcar os checksbox quando o usuario clicar em "não possui" ou em mais de uma opção -->
<script type="text/javascript">

	windows.onload = function() 
{

		//obter o click do checkbox  - DEFICIENTE
        document.getElementById("checkAll").onclick = function deficiente() 
		{
            var form = document.getElementById("myForm"); //formulário
            //percorre todos os checkboxes e seta se está ou não checado, conforme o valor do check mandatório
            var checks = form.getElementsByTagName("input");
            for(var i=0; i<checks.length; i++) 
			{
                var chk = checks[i];
		        if(chk.name == "dados[]")			
	  			 chk.checked = false;

			}
    		
		}   
</script>        
        
        

 

O Problema é que eu precisei utilizar a mesma função para validar os checks de outro form e a função não funciona! O estranho é q se eu deixar somente uma função no head o procedimento funciona,  agora se eu colocar as 2 funções juntas no <head> o procedimento funciona somente em um form ou seja em uma tela.. 

alguém sabe me dizer onde estou errando? será que preciso limpar alguma variavel? 


<!-- script  utilizado para marcar e desmarcar os checksbox quando o usuario clicar em "não possui" ou em mais de uma opção -->
<script type="text/javascript">

	 window.onload = function() 
{

	 
   	   //obter o click do checkbox - DADOS COMPLEMENTARES - AREA CANDIDATO
	  // script  utilizado para marcar e desmarcar os checks da DADOS COMPLEMENTARES #DC quando o usuario clicar em "não possui" ou em mais de uma opção
     document.getElementById("naopossuihab").onclick = function dadoscomplementares() 
	{
            var formdadoscomplementares = document.getElementById("formdadoscomplementares"); //formulário
            //percorre todos os checkboxes e seta se está ou não checado, conforme o valor do check mandatório
            var checksdadoscomplementares = formdadoscomplementares.getElementsByTagName("input");
            for(var idados=0; idados<checksdadoscomplementares.length; idados++) 
			{
                var chkdadoscomplementares = checksdadoscomplementares[idados];
		        if(chkdadoscomplementares.name == "checkhabilitacao[]")			
	  			 chkdadoscomplementares.checked = false;
			}

	}

	}

</script>

 

Obrigado

 

DIEGO

 

Editado por didonsom
Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Boa tarde!

 

Resolvi o problema mudando a função que utilizei para validar os checks em jquery

obtive através desse site, http://www.brandom.com.br/selecionar-todos-checkbox-com-jquery/

 

ai resolvi o problema obrigado a todos, abaixo o codigo, caso alguém precise.

 

diego   

 


<!-- script que verifica se os checksbox  do form #pd deficiente - area candidato estao marcados / desmarcados -->
<script language="javascript" type="text/javascript">

<!-- desmarcando todos se o não possui estiver marcado -->
$(function () {
   $('#checkAll').click(function () {
      var val = this.checked;
      $('input[name=dados').each(function () {
         $(this).prop('checked', false);
      });
   });
});

<!-- desmarcando o não possui estiver algum checkbox estiver marcado -->
$(function () {
   $('input[name=dados]').click(function () {
      var val = this.checked;
      $('input[name=naopossui').each(function () {
         $(this).prop('checked', false);
      });
   });
});
</script>


<!-- script que verifica se os checksbox  do form #dc checkhab - area candidato estao marcados / desmarcados -->
<script language="javascript" type="text/javascript">

<!-- desmarcando todos se o não possui estiver marcado -->
$(function () {
   $('#naopossuihab').click(function () {
      var val = this.checked;
      $('input[name=checkhab').each(function () {
         $(this).prop('checked', false);
      });
   });
});

<!-- desmarcando o não possui estiver algum checkbox estiver marcado -->
$(function () {
   $('input[name=checkhab]').click(function () {
      var val = this.checked;
      $('input[name=naopossuihab').each(function () {
         $(this).prop('checked', false);
      });
   });
});
</script>

 

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...