Your code has many problems. First, you should put the onsubmit
attribute on the <form>
tag to call the hgsubmit()
function, otherwise the function has no use. It would look like this:
<form onsubmit="return hgsubmit()" action="http://www.colegiozerohum.com.br/cgi-sys/formmail.pl" method="post" name="hgmailer" class="nicdark_margin20">
Other errors were the names of some form fields. For example:
name="serie-2018"
Avoid using hyphen in the field names because it will give an error in this type of JavaScript validation:
document.hgmailer.serie-2018.value
Instead, use: name="serie2018"
Your form already has a type="submit"
button, so this line is unnecessary in the function:
document.hgmailer.submit();
You must also return false
in each if
to prevent submit
from happening even if validation fails. For example:
else if (/\S+/.test(document.hgmailer.aluno.value) == false){ alert ("É necessário o nome do aluno."); return false; }
Do this in every if
of the function.
Finally, correct the field names in the function. I noticed that some do not even exist in the form, for example: document.hgmailer.nome.value
. The "name" field does not exist.
In the end, your function would have this structure:
function hgsubmit() {
if (/\S+/.test(document.hgmailer.nome.value) == false){ alert ("Por favor, digite um nome."); return false; }
else if (/^\S+@[a-z0-9_.-]+\.[a-z]{2,6}$/i.test(document.hgmailer.email.value) == false){ alert ("Um endereço de e-mail válido é requerido."); return false; }
else if (/\S+/.test(document.hgmailer.mensagem.value) == false){ alert ("É necessário um conteúdo para mensagem."); return false; }
else if (/\S+/.test(document.hgmailer.aluno.value) == false){ alert ("É necessário o nome do aluno."); return false; }
else if (/\S+/.test(document.hgmailer.responsavel.value) == false){ alert ("É necessário o nome do responsável."); return false; }
else if (/\S+/.test(document.hgmailer.celularresponsavel.value) == false){ alert ("É necessário o Celular do Responsável"); return false; }
else if (/\S+/.test(document.hgmailer.escolaanterior.value) == false){ alert ("É necessário a Escola que cursou em 2017"); return false; }
else if (/\S+/.test(document.hgmailer.valormensalidade.value) == false){ alert ("Valor atual da Mensalidade"); return false; }
else if (/\S+/.test(document.hgmailer.serie2018.value) == false){ alert ("Série que cursará em 2018"); return false; }
else if (/\S+/.test(document.hgmailer.diahorario.value) == false){ alert ("Escolha o dia e horário de sua prova"); return false; }
else {
alert ('Obrigado!\n Sua mensagem foi enviada com sucesso.');
}
}