Ir para conteúdo

Arquivado

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

sil01

Formulário

Recommended Posts

:D Preciso bloquear os campos para a pessoa não enviar o formulário se não preencher todos os campos...Por exemplo, se ela deixar o item Cidade em branco vem um alerta: Preencher o campo Cidade... :( Alguém pode me ajudar?Valeu galera!Até mais :lol: :D :(

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ah, já tentei colocar o Comportamento Validar formulário...

 

Cliquei no enviar e coloquei "Necessário" em todos os campos que aparecem no Form...

 

E endereço no e-mail

 

OnClick no ENVIAR

 

Mas simplesmente não acontece nada!!!

 

Eu clico no enviar sem preencher nenhum campo e ele envia...

 

Tem algo de errado?

 

Bem, o código está abaixo:

 

Valeu desde já

 

   <form action="endereço provedor" method="post" name="E-mail" id="E-mail">      <div align="left">         <table width="96%" height="192" border="0">          <tr>             <td width="37%" height="52">               <div align="right"><span class="unnamed1">                 <input type="hidden" name="recipient" value="e-mail">                <input type="hidden" name="redirect" value="pagina redireciona">                <br>                <br>                Nome:</span></div></td>            <td width="63%" class="unnamed1"><span class="unnamed1">               <input name="subject" type="hidden" id="subject" value="Cadastro">              </span><br> <br>               <input name="Nome" type="text" class="unnamed1" id="Nome" size="25"></td>          </tr>          <tr>             <td height="20" class="unnamed1">               <div align="right"><span class="unnamed1">E-mail:</span></div></td>            <td><input name="E-mail" type="text" class="unnamed1" id="E-mail" size="25"></td>          </tr>          <tr>             <td height="20" class="unnamed1"><div align="right">Cidade:</div></td>            <td><input name="Cidade" type="text" class="unnamed1" id="Cidade" size="25"></td>          </tr>          <tr>             <td height="20" class="unnamed1">               <div align="right">Estado:</div></td>            <td><input name="Estado" type="text" class="unnamed1" id="Estado" size="25"></td>          </tr>          <tr>             <td> </td>            <td> <input name="Submit" type="submit" class="unnamed2" style="color: #ffffff; background-color: #000066" onClick="MM_validateForm('Nome','','R','E-mail','','R','Cidade','','RisEmail','Estado','','R');return document.MM_returnValue" value="Enviar">                  <input name="Submit2" type="reset" class="unnamed2" style="color: #ffffff; background-color: #000066" value="Limpar"></td>          </tr>        </table>        <div align="right"> </div>        <div align="center"> </div>      </div>    </form>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você fez este código na mão? Como não estou vendo o código inteiro não posso afirmar com certeza, mas acredito que falta no código a parte do javascript que no seu caso ficaria assim:

 

<script language="JavaScript" type="text/JavaScript">

<!--

function MM_findObj(n, d) { //v4.01

var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {

d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}

if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[n];

for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers.document);

if(!x && d.getElementById) x=d.getElementById(n); return x;

}

 

function MM_validateForm() { //v4.0

var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;

for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args);

if (val) { nm=val.name; if ((val=val.value)!="") {

if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');

if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';

} else if (test!='R') { num = parseFloat(val);

if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';

if (test.indexOf('inRange') != -1) { p=test.indexOf(':');

min=test.substring(8,p); max=test.substring(p+1);

if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';

} } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }

} if (errors) alert('The following error(s) occurred:\n'+errors);

document.MM_returnValue = (errors == '');

}

//-->

</script>

 

Só tem um problema, meu DW gera os erros em inglês.

 

Outra coisa: No seu código o campo cidade está requerindo email:

 

'E-mail','','R','Cidade','','RisEmail' e seria 'E-mail','','RisEmail','Cidade','','R'

 

Dá uma olhada no seu código e depois diz pra gente se deu certo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Seguinte Galera...

 

Valeu a força mas naum funcionou :)

 

Tentei de tudo e simplesmente o troço nem tchum!

 

Vou enviar o código inteiro com as alterações... Talvez vocês possam me ajudar...

 

Eu não tinha utilizado o JavaScript, só o validar Formulário do DW... Mas com esse código tbm não consegui...

 

Está abaixo o cod se alguém tiver um luz....

 

Um grande abraço a todos

e Vibrações positivas :D

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>::... Recomece.com :: Cadastre-se ...::</title><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><script language="JavaScript" type="text/JavaScript"><!--function MM_reloadPage(init) {  //reloads the window if Nav4 resized  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();}MM_reloadPage(true);//--></script><style type="text/css"><!--.unnamed1 {	font-family: Verdana, Arial, Helvetica, sans-serif;	font-size: 11px;}--></style><style type="text/css"><!--.unnamed2 {	font-family: Verdana, Arial, Helvetica, sans-serif;	font-size: 10px;}--></style></head><body><div id="Layer7" style="position:absolute; width:273px; height:190px; z-index:10; left: 14px; top: 102px;">   <div align="center">     <form action="http://www.8x.com.br/cgi-bin/formmail.cgi" method="post" name="E-mail" id="E-mail">      <div align="left">         <table width="96%" height="192" border="0">          <tr>             <td width="37%" height="52">               <div align="right"><span class="unnamed1">                 <input type="hidden" name="recipient" value="recomece@recomece.com">                <input type="hidden" name="redirect" value="http://www.recomece.com/mail2.htm">                <br>                <br>                Nome:</span></div></td>            <td width="63%" class="unnamed1"><span class="unnamed1">               <input name="subject" type="hidden" id="subject" value="Cadastro">              </span><br> <br>               <input name="Nome" type="text" class="unnamed1" id="Nome" size="25"></td>          </tr>          <tr>             <td height="20" class="unnamed1">               <div align="right"><span class="unnamed1">E-mail:</span></div></td>            <td><input name="E-mail" type="text" class="unnamed1" id="E-mail" size="25"></td>          </tr>          <tr>             <td height="20" class="unnamed1"><div align="right">Cidade:</div></td>            <td><input name="Cidade" type="text" class="unnamed1" id="Cidade" size="25"></td>          </tr>          <tr>             <td height="20" class="unnamed1">               <div align="right">Estado:</div></td>            <td><input name="Estado" type="text" class="unnamed1" id="Estado" size="25"></td>          </tr>          <tr>             <td> </td>            <td> <input name="Submit" type="submit" class="unnamed2" style="color: #ffffff; background-color: #000066" value="Enviar">                  <input name="Submit2" type="reset" class="unnamed2" style="color: #ffffff; background-color: #000066" value="Limpar"></td>          </tr>        </table>        <div align="right"> </div>        <div align="center"> </div>      </div>    </form>  </div></div><div id="Layer1" style="position:absolute; width:258px; height:269px; z-index:9; left: 0; top: 0;"><img src="popup.gif" width="300" height="300"></div><div id="Layer2" style="position:absolute; width:179px; height:60px; z-index:11; left: 107px; top: 39px;">   <p align="center" class="unnamed1"><font color="#333333" size="3"><strong><font color="#CC0000">Cadastre-se!<br>    </font></strong></font><font color="#333333" size="g"><strong><br>    </strong></font><font color="#000066" size="3"><strong>E saiba mais sobre     nosso sistema!</strong></font></p>  </div></body></html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Calma sil01

 

Mudei o código pra você:

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<title>::... Recomece.com :: Cadastre-se ...::</title>

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

<script language="JavaScript" type="text/JavaScript">

<!--

function MM_reloadPage(init) {  //reloads the window if Nav4 resized

if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {

  document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}

else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();

}

MM_reloadPage(true);

 

function MM_findObj(n, d) { //v4.01

  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {

    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}

  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[n];

  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers.document);

  if(!x && d.getElementById) x=d.getElementById(n); return x;

}

 

function MM_validateForm() { //v4.0

  var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;

  for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args);

    if (val) { nm=val.name; if ((val=val.value)!="") {

      if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');

        if (p<1 || p==(val.length-1)) errors+='- o campo '+nm+' deve conter um endereço válido.\n';;

      } else if (test!='R') { num = parseFloat(val);

        if (isNaN(val)) errors+='- o campo '+nm+' deve conter apenas número.\n';

        if (test.indexOf('inRange') != -1) { p=test.indexOf(':');

          min=test.substring(8,p); max=test.substring(p+1);

          if (num<min || max<num) errors+='- o campo '+nm+' deve conter números entre '+min+' e '+max+'.\n';

    } } } else if (test.charAt(0) == 'R') errors += '- você precisa preencher o campo '+nm+' .\n'; }

  } if (errors) alert('Não foi possível enviar sua mensagem:\n'+errors);

  document.MM_returnValue = (errors == '');

}

//-->

</script>

<style type="text/css">

<!--

.unnamed1 {

font-family: Verdana, Arial, Helvetica, sans-serif;

font-size: 11px;

}

-->

</style>

<style type="text/css">

<!--

.unnamed2 {

font-family: Verdana, Arial, Helvetica, sans-serif;

font-size: 10px;

}

-->

</style>

</head>

 

<body>

<div id="Layer7" style="position:absolute; width:273px; height:190px; z-index:10; left: 14px; top: 102px;">

<div align="center">

  <form action="http://www.8x.com.br/cgi-bin/formmail.cgi" method="post" name="E-mail" id="E-mail">

    <div align="left">

      <table width="96%" height="192" border="0">

        <tr>

          <td width="37%" height="52">

            <div align="right"><span class="unnamed1">

              <input type="hidden" name="recipient" value="recomece@recomece.com">

              <input type="hidden" name="redirect" value="http://www.recomece.com/mail2.htm">

              <br>

              <br>

              Nome:</span></div></td>

          <td width="63%" class="unnamed1"><span class="unnamed1">

            <input name="subject" type="hidden" id="subject" value="Cadastro">

            </span><br> <br>

            <input name="nome" type="text" class="unnamed1" id="nome" size="25"></td>

        </tr>

        <tr>

          <td height="20" class="unnamed1">

            <div align="right"><span class="unnamed1">E-mail:</span></div></td>

          <td><input name="email" type="text" class="unnamed1" id="email" size="25"></td>

        </tr>

        <tr>

          <td height="20" class="unnamed1">

<div align="right">Cidade:</div></td>

          <td><input name="cidade" type="text" class="unnamed1" id="cidade" size="25"></td>

        </tr>

        <tr>

          <td height="20" class="unnamed1">

            <div align="right">Estado:</div></td>

          <td><input name="estado" type="text" class="unnamed1" id="estado" size="25"></td>

        </tr>

        <tr>

          <td> </td>

            <td>    <input name="submit" type="submit" class="unnamed2" id="submit" style="color: #ffffff; background-color: #000066" onClick="MM_validateForm('nome','','R','email','','RisEmail','cidade','','R','estado','','R');return document.MM_returnValue" value="Enviar">

              <input name="reset" type="reset" class="unnamed2" id="reset" style="color: #ffffff; background-color: #000066" value="Limpar"></td>

        </tr>

      </table>

      <div align="right"> </div>

      <div align="center"> </div>

    </div>

  </form>

</div>

</div>

<div id="Layer1" style="position:absolute; width:258px; height:269px; z-index:9; left: 0; top: 0;"><img src="popup.gif" width="300" height="300"></div>

<div id="Layer2" style="position:absolute; width:179px; height:60px; z-index:11; left: 107px; top: 39px;">

<p align="center" class="unnamed1"><font color="#333333" size="3"><strong><font color="#CC0000">Cadastre-se!<br>

  </font></strong></font><font color="#333333" size="g"><strong><br>

  </strong></font><font color="#000066" size="3"><strong>E saiba mais sobre

  nosso sistema!</strong></font></p>

</div>

</body>

</html>

Agora os campos são de preenchimento obrigatório, mas o link realmente para envio do formulário não está funcionando, verifica com o pessoal que hospeda sua página.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Prezado Cris.bsInacreditável!!! Valeu!!! Funcionou!!! :huh: Muito obrigada mesmo, é bom saber que na comunidade web temos colegas prestativos e acima de tudo "entendidos"Só fiquei com uma dúvida... Pq DW não adicionou automaticamente o script qdo pedi para validar o formulário? Bom, de qualquer forma, agora funciona! :huh: Um grande abraço e Vibrações positivas!!! :blink:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sil01Também não entendi pq o DW não gerou automaticamente. Eu o gerei assim:Peguei seu formulário, selecionei o botão "enviar" e na guia Behaviors selecionei "validar formulário", mudei a propriedade de cada campo e depois dei OK. Pronto, o código já estava gerado.Como meu DW é em inglês, ele gera os avisos de erros em inglês, então traduzi os mesmos no código.Quanto a ajuda, estamos nesse fórum exatamente pra isso, hoje eu te ajudo, amanhã você ajuda outro ou a mim mesma. Acho legal essa troca de informação. Só não ajudo aqueles que pedem que a gente faça tudo por eles sem querer aprender nada... não estamos nessa pra trabalhar de graça, não é mesmo? :blink: Quando precisar, estamos aí.

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.