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

Validar Formulario


Guest edelvis

Pergunta

olá galera!

Preciso de uma validação de formulario que verifica os valores de dois botões de radio, comparando se um é o maior ou menor que o outro.

Nesse formulario tem os seguintes campos:

Autor,

Hora Inicial (08:00 as 17:00) e Hora Final (09:00 as 18:00)

intervalo de uma em uma hora, apresentado por botão de radio.

Segue a função javascript que verifica se os campos estão preenchidos(funcionando), faltando verificar se a hora incial é maior ou igual a hora final, se acontecer isso não permitir.

<script language="JavaScript">

function verifica() {

//Verificar se um valor da combo foi escolhido.

if (document.forms['form2'].Autor.selectedIndex == 0) {

alert("Selecione o Autor !!!")

return false;

}

//Verificar se a hora inicial foi escolhido.

if (!document.forms['form2'].hi[0].checked && !document.forms[0].hi[1].checked && !document.forms[0].hi[2].checked && !document.forms[0].hi[3].checked && !document.forms[0].hi[4].checked && !document.forms[0].hi[5].checked && !document.forms[0].hi[6].checked && !document.forms[0].hi[7].checked && !document.forms[0].hi[8].checked && !document.forms[0].hi[9].checked) {

alert("Selecione a hora inicial !!!")

return false;

}

//Verificar se a hora final foi escolhido.

if (!document.forms['form2'].hf[0].checked && !document.forms[0].hf[1].checked && !document.forms[0].hf[2].checked && !document.forms[0].hf[3].checked && !document.forms[0].hf[4].checked && !document.forms[0].hf[5].checked && !document.forms[0].hf[6].checked && !document.forms[0].hf[7].checked && !document.forms[0].hf[8].checked && !document.forms[0].hf[9].checked) {

alert("Selecione a hora final !!!")

return false;

}

return true;

}

</script>

FORM que chama a função:

<form ............ name="form2" onSubmit="return (verifica())">

Se algué souber ou algo parecido que compara varios radios por favor, posta aqui, preciso muito...

Desde já agradeço.

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0
Guest - Edelvis -

Como que eu faço para setar uma variavel????

Não saco muito javascript.... sou iniciante.

Como faço para verificar se a hora incial é maior ou igual a hora final, se acontecer isso não permitir.

No caso seria para verificar qual dos radios selecionado é o maior... dois botões de radio diferente. verificar os valores selecionados....

valeu...

Link para o comentário
Compartilhar em outros sites

  • 0

EX:


<script LANGUAGE="JavaScript">

function valida Hora();   //*** Cria a Função Hora();
{

//*** document é a referencia a seu documento principal.
//*** form1 é o nome do seu formulario
//*** campoH1 é o nome do campo da hora inicial.
//*** campoH2 é o nome do campo da hora final.

if (document.form1.campoH1.value>document.form1.campoH2.value)
 {
     alert(' A Hora Final deve ser maior que a inicial...  ');   //*** Exibe mensagem.
     document.form1.campoH1.focus();   //*** Coloca o foco.
     return false;    // Cancela a Submição dos dados.
 }

return true;  // Autoriza a submição dos dados.
}

</SCRIPT>

No seu botão -- HTML

<form name="form1" id="form1" method="POST" action="">

Hora inicial: <input type="text" name="campoH1" id="campoH1" >
Hora Final:  <input type="text" name="campoH2" id="campoH2" >

<input type="submit" name="s1" id="s1" value="validar" onClick="return Hora();" >

</form>

Qualquer coisa POSTA ae...

Abraços...

Link para o comentário
Compartilhar em outros sites

  • 0
Guest - Edelvis -

COMPARAR BOTÕES DE RADIO.

O formulario é + ou - assim:

EX:

<form method="post" action="......  " onSubmit="........">

<table width="26%"  border="1">
  <tr>
    <td colspan="10">Nome:
    <input type="text" name="nome"></td>
  </tr>
  <tr>
    <td colspan="10">&nbsp;</td>
  </tr>
  <tr bgcolor="#999999">
    <td colspan="10">Horário Inicial:</td>
  </tr>
  <tr bgcolor="#CCCCCC">
    <td width="28%" align="center"><b>08:00</b></td>
	<td width="22%" align="center"><b>09:00</b></td>
	<td width="27%" align="center"><b>10:00</b></td>
	<td width="23%" align="center"><b>11:00</b></td>
  </tr>
  <tr>
    <td align="center"><input name="horaInicio" type="radio" value="08"></td>
	<td align="center"><input name="horaInicio" type="radio" value="09"></td>
	<td align="center"><input name="horaInicio" type="radio" value="10"></td>
	<td align="center"><input name="horaInicio" type="radio" value="11"></td>
  </tr>
  <tr>
    <td colspan="10">&nbsp;</td>
  </tr>
  <tr bgcolor="#999999">
    <td colspan="10">Horário Final:</td>
  </tr>
  <tr bgcolor="#CCCCCC">
    <td align="center"><b>09:00</b></td>
	<td align="center"><b>10:00</b></td>
	<td align="center"><b>11:00</b></td>
	<td align="center"><b>12:00</b></td>
  </tr>
  <tr>
    <td align="center"><input name="horaInicio" type="radio" value="09"></td>
	<td align="center"><input name="horaInicio" type="radio" value="10"></td>
	<td align="center"><input name="horaInicio" type="radio" value="11"></td>
	<td align="center"><input name="horaInicio" type="radio" value="12"></td>
  </tr>
    <tr>
    <td colspan="10">&nbsp;</td>
  </tr>
    <tr>
    <td colspan="10" div align="center"><input type="submit" name="Submit" value="   Enviar   "></td>
  </tr>
</table>
</form>

Como faço para verificar se a hora incial é maior ou igual a hora final, se acontecer isso não permitir.

No caso seria para verificar qual dos radios selecionado é o maior... dois botões de radio diferente. verificar os valores selecionados....

valeu...

Link para o comentário
Compartilhar em outros sites

  • 0

Cara seguinte, você não precisa ter dois rádios, pode usar somente um(quero dizer com o mesmo nome) e tu atribui um value pra ele e na hora de enviar tu pega a hora que ele tah te retornando. Dae na data você cria uma nova data(new Date(valor recebido da tela)) apartir do valor informado na tela e compara as datas.

Qualquer coisa se não conseguir posta ae...

Abraço

Crystian

Link para o comentário
Compartilhar em outros sites

  • 0
Guest - Edelvis -

mas são dois valores diferente hora inicial e hora final....

O formulario é este....

<form method="post" action="......  " onSubmit="........">

<table width="26%"  border="1">
 <tr>
   <td colspan="10">Nome:
   <input type="text" name="nome"></td>
 </tr>
 <tr>
   <td colspan="10">&nbsp;</td>
 </tr>
 <tr bgcolor="#999999">
   <td colspan="10">Horário Inicial:</td>
 </tr>
 <tr bgcolor="#CCCCCC">
   <td width="28%" align="center"><b>08:00</b></td>
<td width="22%" align="center"><b>09:00</b></td>
<td width="27%" align="center"><b>10:00</b></td>
<td width="23%" align="center"><b>11:00</b></td>
 </tr>
 <tr>
   <td align="center"><input name="horaInicio" type="radio" value="08"></td>
<td align="center"><input name="horaInicio" type="radio" value="09"></td>
<td align="center"><input name="horaInicio" type="radio" value="10"></td>
<td align="center"><input name="horaInicio" type="radio" value="11"></td>
 </tr>
 <tr>
   <td colspan="10">&nbsp;</td>
 </tr>
 <tr bgcolor="#999999">
   <td colspan="10">Horário Final:</td>
 </tr>
 <tr bgcolor="#CCCCCC">
   <td align="center"><b>09:00</b></td>
<td align="center"><b>10:00</b></td>
<td align="center"><b>11:00</b></td>
<td align="center"><b>12:00</b></td>
 </tr>
 <tr>
   <td align="center"><input name="horaInicio" type="radio" value="09"></td>
<td align="center"><input name="horaInicio" type="radio" value="10"></td>
<td align="center"><input name="horaInicio" type="radio" value="11"></td>
<td align="center"><input name="horaInicio" type="radio" value="12"></td>
 </tr>
   <tr>
   <td colspan="10">&nbsp;</td>
 </tr>
   <tr>
   <td colspan="10" div align="center"><input type="submit" name="Submit" value="   Enviar   "></td>
 </tr>
</table>
</form> 

Link para o comentário
Compartilhar em outros sites

  • 0

Acho q vou te dar um exemplo que nós nos entendemos mais fácil... Eu acabei colocando dois nomes diferentes para os rádios, porque com um não daria, eu não tinha entendido a tua dúvida...

Dá uma olhada nesse código e depois me diz se era isso ou não

<head>
<script language="javascript">
function compara(obj1, obj2) {
	valor1 = getValue(obj1);
    valor2 = getValue(obj2);
    if (valor1 > valor2) {
    	alert("erro");
        return false;
    }
    return true;
}
function getValue(objRadio) {
	for (var i=0; i < objRadio.length; i++) {
    	if (objRadio[i].checked == true) return objRadio[i].value;
    }
}
</script>
</head>
<body>
<form name="form" method="post" action="" onSubmit="return compara(document.form.horaInicio, document.form.horaFinal)">
<table width="26%"  border="1">
<tr>
  <td colspan="10">Nome:
  <input type="text" name="nome"></td>
</tr>
<tr>
  <td colspan="10">&nbsp;</td>
</tr>
<tr bgcolor="#999999">
  <td colspan="10">Horário Inicial:</td>
</tr>
<tr bgcolor="#CCCCCC">
  <td width="28%" align="center"><b>08:00</b></td>
<td width="22%" align="center"><b>09:00</b></td>
<td width="27%" align="center"><b>10:00</b></td>
<td width="23%" align="center"><b>11:00</b></td>
</tr>
<tr>
  <td align="center"><input name="horaInicio" type="radio" value="08"></td>
<td align="center"><input name="horaInicio" type="radio" value="09"></td>
<td align="center"><input name="horaInicio" type="radio" value="10"></td>
<td align="center"><input name="horaInicio" type="radio" value="11"></td>
</tr>
<tr>
  <td colspan="10">&nbsp;</td>
</tr>
<tr bgcolor="#999999">
  <td colspan="10">Horário Final:</td>
</tr>
<tr bgcolor="#CCCCCC">
  <td align="center"><b>09:00</b></td>
<td align="center"><b>10:00</b></td>
<td align="center"><b>11:00</b></td>
<td align="center"><b>12:00</b></td>
</tr>
<tr>
  <td align="center"><input name="horaFinal" type="radio" value="09"></td>
<td align="center"><input name="horaFinal" type="radio" value="10"></td>
<td align="center"><input name="horaFinal" type="radio" value="11"></td>
<td align="center"><input name="horaFinal" type="radio" value="12"></td>
</tr>
  <tr>
  <td colspan="10">&nbsp;</td>
</tr>
  <tr>
  <td colspan="10" div align="center"><input type="submit" name="Submit" value="   Enviar   "></td>
</tr>
</table>
</form>
</body>

Abraço

Crystian

Link para o comentário
Compartilhar em outros sites

  • 0
Guest - Edelvis -

Crystian,

Valeu!!!! Era isso mesmo cara.... muito obrigado.... valeu mesmo...

só implementei isso para o campo nome não ser enviado vazio....

if (document.forms['form'].autor.value.length == 0) {
   alert('Por favor, preencha o campo Nome!');
   return false;
}

Abraço..... fuiii

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...