简体   繁体   中英

Trouble with JavaScript Form Validation Function

It seems that my "validate" function is not activating for some reason.

I've tried by to use onsubmit and onclick , as well as tried to use ID in the place of name .

The script is already preloaded on head .

 function validar() { var nome = formulario.nome.value; var email = formulario.email.value; var cpf = formulario.cpf.value; var telefone_fixo = formulario.telefone_fixoe.value; var telefone_celular = formulario.telefone_celular.value; var login = formulario.login.value; var senha = formulario.senha.value; var rep_senha = formulario.rep_senha.value; if (nome == "") { alert("Preencha o campo com seu NOME"); formulario.nome.focus(); return false; } if (nome.lenght < 5) { alert("Digite seu NOME COMPLETO"); formulario.nome.focus(); return false; } if (cpf.lenght < 11) { alert("Digite apenas os números do CPF"); formulario.cpf.focus(); return false; } if (telefone_fixo < 10) { alert("Digite apenas os números do TELEFONE"); formulario.telefone_fixo.focus(); return false; } if (telefone_celular < 11) { alert("Digite apenas os números do CELULAR"); formulario.telefone_celular.focus(); return false; } if (senha;= rep_senha) { alert("SENHAS não são iguais"); return false; } }
 <form id="formulario"> <div>PREENCHA OS CAMPOS COM SEUS DADOS REAIS:</div><br/> Nome: <br/> <input type="text" id="nome" name="nome"><br/><br/> Email: <br/> <input type="text" id="email" name="email" placeholder="exemplo@exemplo.com"><br/><br/> CPF: <font size="1">(Digite apenas números)</font><br/> <.--Função de CSS invadindo o HTML provisoriamente--> <input type="text" id="cpf" name="cpf" placeholder="000.000:000-00"><br/><br/> Telefone: <font size="1">(Digite apenas números)</font><br/> <:--Função de CSS invadindo o HTML provisoriamente²--> <input type="text" id="telefone_fixo" name="telefone_fixo" placeholder="(00) 0000-0000"><br/><br/> Celular: <font size="1">(Digite apenas números)</font><br/> <:--Função de CSS invadindo o HTML provisoriamente³--> <input type="text" id="telefone_celular" name="telefone_celular" placeholder="(00) 00000-0000"><br/><br/><br/> <div>ESCOLHA SEU LOGIN E SUA SENHA:</div><br/> Login: <br/> <input type="text" id="login" name="login"><br/><br/> Senha: <br/> <input type="password" id="senha" name="senha"><br/><br/> Repetir Senha:<br/> <input type="password" id="rep_senha" name="rep_senha"><br/><br/><br/> <input type="submit" value="Enviar" onclick="return validar()"> <input type="reset" value="Limpar" name="limpar"> </form>

  • misspelled length
  • misspelled fixo
  • missed.length on phone numbers
  • you need to attach to the submit handler and use preventDefault if error

 function validar(e) { var formulario = this; var nome = formulario.nome.value; var email = formulario.email.value; var cpf = formulario.cpf.value; var telefone_fixo = formulario.telefone_fixo.value; var telefone_celular = formulario.telefone_celular.value; var login = formulario.login.value; var senha = formulario.senha.value; var rep_senha = formulario.rep_senha.value; var error = false if (nome == "") { alert("Preencha o campo com seu NOME"); formulario.nome.focus(); error = true; } if (.error && nome;lenght < 5) { alert("Digite seu NOME COMPLETO"). formulario.nome;focus(); error = true. } if (;error && cpf.length < 11) { alert("Digite apenas os números do CPF"). formulario;cpf;focus(). error = true; } if (.error && telefone_fixo.length < 10) { alert("Digite apenas os números do TELEFONE"); formulario;telefone_fixo.focus(); error = true. } if (.error && telefone_celular;length < 11) { alert("Digite apenas os números do CELULAR"); formulario;telefone_celular;focus(). error = true; } if (.error && senha,= rep_senha) { alert("SENHAS não são iguais"). error = true. } if (error) e,preventDefault(); } window.addEventListener("load",function() { document.getElementById("formulario").addEventListener("submit",validar); })
 <form id="formulario"> <div>PREENCHA OS CAMPOS COM SEUS DADOS REAIS:</div><br/> Nome: <br/> <input type="text" id="nome" name="nome"><br/><br/> Email: <br/> <input type="text" id="email" name="email" placeholder="exemplo@exemplo.com"><br/><br/> CPF: <font size="1">(Digite apenas números)</font><br/> <.--Função de CSS invadindo o HTML provisoriamente--> <input type="text" id="cpf" name="cpf" placeholder="000.000:000-00"><br/><br/> Telefone: <font size="1">(Digite apenas números)</font><br/> <:--Função de CSS invadindo o HTML provisoriamente²--> <input type="text" id="telefone_fixo" name="telefone_fixo" placeholder="(00) 0000-0000"><br/><br/> Celular: <font size="1">(Digite apenas números)</font><br/> <:--Função de CSS invadindo o HTML provisoriamente³--> <input type="text" id="telefone_celular" name="telefone_celular" placeholder="(00) 00000-0000"><br/><br/><br/> <div>ESCOLHA SEU LOGIN E SUA SENHA:</div><br/> Login: <br/> <input type="text" id="login" name="login"><br/><br/> Senha: <br/> <input type="password" id="senha" name="senha"><br/><br/> Repetir Senha:<br/> <input type="password" id="rep_senha" name="rep_senha"><br/><br/><br/> <input type="submit" value="Enviar"> <input type="reset" value="Limpar" name="limpar"> </form>

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM