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

Js Para Validar Formlario


Beraldo

Pergunta

* Tudo sem acento por causa desse nosso lamentavel ocorrido... :(

Sou iniciante em JS e estou tentando fazer uma validacao para um formulario, mas esta dando problema.

Eu ponho esta funcao no onSubmit do form, mas nada acontece: o form e enviado sem ue haja a validacao.

<script language="JavaScript">
function valida() {
  var nome = document.getElementById('nome');
  var email = document.getElementById('email');
  var assunto = document.getElementById('assunto');
  var mensagem = document.getElementById('mensagem');
    
  if (nome = '') 
    erro .= 'Preencha seu nome. \n';
    
  if (email =  '')
    erro .= 'Informe-nos seu e-mail. \n';
    
  if (assunto = '')
    erro .= 'Selecione um assunto. \n';
    
  if (mensagem = '')
    erro .= 'Escreva a mensagem. \n';
    
  if (erro != '') {
    mensagem = 'Verifique o(s) seguinte(s) erro(s): \n\n';
    alert (+mensagem +erro);
    return false;
  } else return true;
}

O que estou fazendo de errado?

*Os campos estao marcados com "id". O problema não e esse.

Valeu

Abracos

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Fala ai brow!!

uso esse aqui, caso você queria ^^

<script>
function fncJsValidaEMail (objCampo){
    //a@aaa.aaa
    if(objCampo.value.indexOf (' ') != -1){
        alert('O e-mail não pode ter espaço em branco.');
        objCampo.focus();
        return false;
    }
    if(objCampo.value.indexOf ('@') < 1){
        alert('O e-mail informado não é válido.');
        objCampo.focus();
        return false;
    }
    objCampo.value.indexOf ('@')
    if(objCampo.value.substring((objCampo.value.indexOf ('@') + 1), objCampo.value.length).indexOf ('@') >= 0){
        alert('O e-mail informado não é válido. Não pode conter mais de um @.');
        objCampo.focus();
        return false;
    }
    if(objCampo.value.indexOf ('.') < 5){
        alert('O e-mail informado não é válido.');
        objCampo.focus();
        return false;
    }
    if((objCampo.value.substring((objCampo.value.indexOf ('.') + 1), objCampo.value.length).length) < 3){
        alert('O e-mail informado não é válido.');
        objCampo.focus();
        return false;
    }
    return true;
}



function Validar (f){
    if(f.nome.value==''){
        alert('Você não informou seu NOME.');
        f.nome.focus();
        return false
    }
    if(f.email.value==''){
        alert('Você não informou seu E-MAIL.');
        f.email.focus();
        return false
    }else{
        if(!fncJsValidaEMail(f.email)){return false;}
    }
    if(f.mensagem.value==''){
        alert('Você não escreveu sua MENSAGEM.');
        f.mensagem.focus();
        return false
    }
    return true;
}
</script>
<form name="form" method="post" action="contato.php" onsubmit="return Validar(this);">

[]''s

Link para o comentário
Compartilhar em outros sites

  • 0

COMPLEMENTANDO, ::frenetico::, acho que você deve mudar uma parte de seu script.

Visto que nem todos os e-mails que terminam em .br têm .com, acho melhor deixar esta linha desta forma:

if((objCampo.value.substring((objCampo.value.indexOf ('.') + 1), objCampo.value.length).length) < 2){
        alert('O E-Mail informado não é válido.');
        objCampo.focus();
        return false;
    }
    return true;
}

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

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