Ir para conteúdo

Arquivado

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

Algalord

Validar checkbox

Recommended Posts

Pessoal, to precisando de um script q nao deixe enviar o form se nenhuma checkbox for selecionada...tipo opções de enquete..p/ nao enviar o form se alguma opção nao for selecionada..Alguem manja disso?Abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

criea uma função java script para validar e retornar verdadeiro conforme necessário.tipo

<script language='javascript'>function validar(){...if (document.form1.check1.checked==false)  return false;else  return true;...}</script>

ou seja, utilize return quando estiver validado todo o formulário, se deve enviar ou não. tendeu?depois você põe isso no evento OnSubmit do form:

<form ... OnSubmit='return validar()'>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi!

Desculpe não ter explicado direito, na hora estava me preparando para ir num cliente...

Fiz um exemplo com + calma dá uma olhada, estuda ele que está comentado e moleza de entender:

<html>

<head>

<title>Validar CheckBox</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<script language="JavaScript">

function validar()

{

var objcritica;

var totcheck=0; //total de checkboxes definido

var totsel=0; //totel de itens selecionados

var i=0;

//utilizar o Span definido como 'critica' no ID para exibir as mensagens

if (document.all)

  objcritica = document.all['critica'];

else

  objcritica = document.getElementById('critica');

 

if (document.form1.txtnome.value=="")

{

  //adiciona um texto ao objeto HTML definido

  objcritica.innerText="Informe seu nome ali em cima please!";

  document.form1.txtnome.focus();

  return false; //sai da validação e cancela o envio do formulário

}

 

//validar os checkboxes

//neste exemplo cada check tem o mesmo nome, p/ ficar + rápido a validação

totcheck=document.form1.chkprogramas.length; //total de opções (checkboxes) com o nome 'chkprogramas'

//verificar se pelo menos uma das opções está selecionada

for (i=0;i<totcheck;i++)

{

  //se todas opções estiverem desmarcadas então cancela o formulário

  if (document.form1.chkprogramas[i].checked==true)

   totsel+=1; //adiciona +1 na veriável de itens selecionados

}

 

//se não selecionou nem uma opção então retorna false para o envio do formulário

if (totsel==0)

{

  objcritica.innerText="Selecione uma opção ae '" + document.form1.txtnome.value + "' =)";

  return false;

}

else

  alert("Obrigado pela sua colaboração!");

}

</script>

</head>

 

<body onLoad="java script: document.form1.txtnome.focus()">

<form name="form1" method="post" action="" onSubmit="return validar()">

  <p>Seu nome:

    <input name="txtnome" type="text" id="txtnome" title="Digite seu nome aki!">

  </p>

  <p>

  

  <div align="center"><strong>Programas favoritos:</strong></div>

    <br>

 

  <input name="chkprogramas" type="radio" id="chkprogramas" value="cinderela">

  Cinderela

  <input name="chkprogramas" type="radio" id="chkprogramas" value="chcolate">

    Chocolate com pimenta

   

  <input name="chkprogramas" type="radio" id="chkprogramas" value="xuxa">

    Xuxa

   

  <input name="chkprogramas"  type="radio" id="chkprogramas" value="power">

    Power Ranger</p><br><br>

  <div align="center">

    <input type="submit" name="Submit" value="Manda!">

  </div>

  <div align="center"><span id="critica" style="color: #FF0000"></span> </div>

</form>

</body>

</html>

Repare que usei o nome chkprogramas para as opções, um array. Assim é bem melhor e + rápido de validar.

Acredito que esteja fácil de entender, mas qquer dúvida tamos ae! :P

 

flws

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.