Ajuda com verificação de nome e email Javascript
Olá,
estou tendo dificuldades para criar o código de validação de um formulário que abrirá em um popup, o código fica se repetindo causando erro (o erro aparece na tela repetidamente de forma que não é possível preencher os campos). Peço gentilmente a ajuda de vocês.
Código HTML:
<HTML>
<HEAD>
<link rel="stylesheet" href = "css/stylesheet1.css">
</HEAD>
<BODY>
<!-- popup -->
<div id = "popup" class = "popup">
<a>x</a>
<h3><center>Inscreva-se em nossa newsletter</center></h3>
<p><center>Cadastre-se e fique por dentro de nossos eventos e promoções!</center></p>
<form class="form" method= "get" name = "modal_form" onSubmit="return ( verifica() )">
<input id="name" name = "nome" type="text" placeholder="NOME" onblur="checar();" />
<input id="email" name = "email" type="text" placeholder="nome@email.com" onblur="checar();" />
<br>
<span class = "nao_valido">Email Inválido</span>
<br>
<input id="submit" type="submit" value="Enviar">
</form>
<br>
</div>
Código Javascript
setTimeout(ApresentarPopup, 4000);
function ApresentarPopup(){
document.querySelector(".popup").style.display = "block";
document
.querySelector(".popup a")
.addEventListener("click", function(){ document.querySelector(".popup").style.display = "none";
});
}
//validação
function verifica() {
if (document.forms[0].email.value.length == 0) {
alert("Por favor, informe o seu e-mail.");
document.modal_form.email.focus();
return false;
}
return true;
}
function checar(){
if( document.forms[0].email.value==""
|| document.forms[0].email.value.indexOf('@')==-1
|| document.forms[0].email.value.indexOf('.')==-1 )
{
alert( "Por favor, informe um e-mail válido." );
return false;
}
if (document.forms[0].nome.value == ""){
alert ("Por favor, informe seu nome");
return false;
}
}
<script type="text/javascript" src="js/script.js"></script>Discussão (0)
Carregando comentários...