I put a form on a website and I cannot get the confirmation message to appear. The code is below. Can anyone help me?

Asked

Viewed 31 times

0

<script type="text/javascript">
function hgsubmit() {
if (/\S+/.test(document.hgmailer.nome.value) == false) alert ("Por favor, digite um nome.");
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.");
else if (/\S+/.test(document.hgmailer.mensagem.value) == false) alert ("É necessário um conteúdo para mensagem.");
else if (/\S+/.test(document.hgmailer.aluno.value) == false) alert ("É necessário o nome do aluno.");
else if (/\S+/.test(document.hgmailer.responsavel.value) == false) alert ("É necessário o nome do responsável.");
else if (/\S+/.test(document.hgmailer.celularresponsavel.value) == false) alert ("É necessário o Celular do Responsável");
else if (/\S+/.test(document.hgmailer.escolaanterior.value) == false) alert ("É necessário a Escola que cursou em 2017");
else if (/\S+/.test(document.hgmailer.valormensalidade.value) == false) alert ("Valor atual da Mensalidade");
else if (/\S+/.test(document.hgmailer.serie2018.value) == false) alert ("Série que cursará em 2018");
else if (/\S+/.test(document.hgmailer.diahorarioprova.value) == false) alert ("Escolha o dia e horário de sua prova");
else { 
document.hgmailer.submit();
alert ('Obrigado!\n Sua mensagem foi enviada com sucesso.');
}
}
</script>

<------------------------------------------------->

<div class="nicdark_archive1 nicdark_bg_grey nicdark_radius nicdark_shadow">
                <div class="nicdark_textevidence nicdark_bg_orange nicdark_radius_top">
                    <h4 class="white nicdark_margin20">FORMULÁRIO</h4>
                    <i class="icon-mail nicdark_iconbg right medium orange"></i>
                </div>
                <div class="nicdark_margin20">
<form action="http://www.colegiozerohum.com.br/cgi-sys/formmail.pl" method="post" name="hgmailer" class="nicdark_margin20">
<input type="hidden" name="recipient" value="[email protected]" class="nicdark_bg_grey2 nicdark_radius nicdark_shadow grey small subtitle">


<input class="nicdark_bg_grey2 nicdark_radius nicdark_shadow grey small subtitle" required="required" type="text" value="" placeholder="Nome do Aluno" name="aluno" size="40">
<div class="nicdark_space20"></div>

<input class="nicdark_bg_grey2 nicdark_radius nicdark_shadow grey small subtitle" required="required" type="text" value="" placeholder="Responsável" name="responsavel" size="40">
<div class="nicdark_space20"></div>

<input class="nicdark_bg_grey2 nicdark_radius nicdark_shadow grey small subtitle" required="required" type="text" value="" placeholder="Telefone residencial" name="Telefone" size="40"><div class="nicdark_space20"></div>

<input class="nicdark_bg_grey2 nicdark_radius nicdark_shadow grey small subtitle" required="required" type="text" value="" placeholder="Celular do Responsável" name="celular-responsavel" size="40">
<div class="nicdark_space20"></div>

<input class="nicdark_bg_grey2 nicdark_radius nicdark_shadow grey small subtitle" required="required" type="text" value="" placeholder="Email do responsável" name="email" size="400">
<div class="nicdark_space20"></div>

<input class="nicdark_bg_grey2 nicdark_radius nicdark_shadow grey small subtitle" required="required" type="text" value="" placeholder="Escola que cursou em 2017" name="escola-anterior" size="40">
<div class="nicdark_space20"></div>

<input class="nicdark_bg_grey2 nicdark_radius nicdark_shadow grey small subtitle" required="required" type="text" value="" placeholder="Valor atual da Mensalidade" name="valor-mensalidade" size="40">
<div class="nicdark_space20"></div>

<input class="nicdark_bg_grey2 nicdark_radius nicdark_shadow grey small subtitle" required="required" type="text" value="" placeholder="Série que cursará em 2018" name="serie-2018" size="40">
<div class="nicdark_space20"></div>

<input class="nicdark_bg_grey2 nicdark_radius nicdark_shadow grey small subtitle" required="required" type="text" value="" placeholder="Escolha o dia e horário de sua prova" name="dia-horario" size="40">
<div class="nicdark_space20"></div>

<input class="nicdark_btn nicdark_bg_orange medium nicdark_shadow nicdark_radius white" type="submit" value="Enviar">

<input type="hidden" name="redirect" value="http://www.colegiozerohum.com.br/"> 
</form>
 <p style="text-align:right; font-size:14px;">*Trazer Lápis, Borracha e Caneta<br>*Bolsão para alunos que cursarão do 6º ano ao 3º ano do ensino médio</P>
</div>
 </div>
  • What is the function for function hgsubmit() if you make no reference to her?

1 answer

1

Your code has many problems. First, you must put the attribute onsubmit on the tag <form> to call the function hgsubmit(), otherwise the function has no usefulness. 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 found were the names of some form fields. For example:

name="serie-2018"

Avoid using hyphen in field names because it will give error in this type of Javascript validation:

document.hgmailer.serie-2018.value

Instead of that, use: name="serie2018"

Your form already has a button type="submit", therefore, it is unnecessary this line in the function:

document.hgmailer.submit();

It is also necessary to make a return false in each if to prevent the submit even if the validation fails. For example:

else if (/\S+/.test(document.hgmailer.aluno.value) == false){ alert ("É necessário o nome do aluno."); return false; }

Do it in each if of function.

Finally, correct the field names in the function. I checked that some do not even exist in the form, for example: document.hgmailer.nome.value. The "name" field does not exist.

In the end, its 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.');
    }
}

Browser other questions tagged

You are not signed in. Login or sign up in order to post.