Foros aprenderaprogramar.com

Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: mouportador10 en 17 de Enero 2017, 18:15

Título: JavaScript evento onsubmit envío de formulario ejecutar función validar CU01142E
Publicado por: mouportador10 en 17 de Enero 2017, 18:15
Hola dejo mi respuesta para el ejercicio de validar con las funciones de cadenas.
Código: [Seleccionar]
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Validar con funciones de cadenas</title>
<style type="text/css">
label, input{display: block;}
button{border: none; cursor: pointer; background-color: blueviolet; border-radius: 10px; padding: 10px; margin: 5px 10px; }
button:hover{background-color: violet; color: white;}
</style>
</head>
<body>
<div>
<form method="get" action="#" onsubmit="return validar()" name="formulario" role="form">
<label for="nombre">Nombre: </label>
<input type="text" id="nombre" name="nombre" />
<label for="apellidos">Apellidos: </label>
<input type="text" id="apellidos" name="apellidos" />
<label for="mail">Correo: </label>
<input type="text" id="mail" name="mail" />
<button type="submit"> Enviar </button>
<button type="reset">Limpiar </button>
</form>

</div>
<script type="text/javascript" >
var envio = false;
function validar() {
var nom = document.getElementById('nombre').value;
var ape = document.getElementById('apellidos').value;
var correo = document.getElementById('mail').value;
var nombrebien = validnom(nom);
var correobien = correovalido(correo);
//var correomin = mayusculas();

if (nombrebien == true && correobien == true) {
return true;
}
else {
return false;
}
}
function validnom(nombre) {
if(nombre.length < 3){
alert("El nombre debe tener al menos 3 letras y tiene: " + nombre.length + nombre);
return false;
}
document.getElementById('nombre').value = nombre;
return true;
}
function correovalido(email) {
var mail = email.replace(/at/g,'@');
if(mail.indexOf('@') == -1 && mail.indexOf('.') == -1){
alert("El Formato es incorrecto falta '@' y '.' en el correo");
return false;
}
else if (mail.indexOf('@') == -1) {
alert("El Formato es incorrecto falta un \'@\' en el correo");
return false;
}
else if (mail.indexOf('.') == -1) {
alert("El Formato es incorrecto falta un \'.\' en el correo");
return false;
}
else {
document.getElementById('mail').value = mail.toLowerCase();
return true;
}
}
</script>
</body>
</html>
Título: Re:JavaScript evento onsubmit envío de formulario ejecutar función validar CU01142E
Publicado por: pedro,, en 17 de Enero 2017, 22:43
Hola mouportador10.

Viendo que es tu primer mensaje, te recomiendo que leas las normas básicas del foro para publicar.

https://www.aprenderaprogramar.com/foros/index.php?topic=1460.msg7784#msg7784

Cuando quieras hacer una consulta en el foro, intenta preferentemente crear un nuevo hilo y no escribir en uno ya creado, a no ser que quieras comentar algo sobre lo escrito en el,  en el enlace anterior tienes explicado el por qué.

Sobre tu ejercicio comentarte, que la forma que has usado para cambiar "at" por "@", no está bien planteada, deberías haber añadido un espacio delante de " at " y otro detrás, porque si yo escribiese "gato@gato.com" me lo transformaría en "g@o@g@o.com".

En el curso, en la entrega en la que te encuentras no se ha explicado todavía como parar el envío de un formulario con la utilización de 'onsubmit="return nombreFuncion();', solo lo comento por si alguien que esté siguiendo el curso ojease este ejercicio y le resultara extraño lo que ve.

También decirte que si vienes siguiendo el curso desde el principio habrás comprobado que se recomienda colocar el "script" dentro del "head".

Además comentarte que los nombres de las funciones y variables deben ser lo más descriptivos posible, por convención, los nombres de funciones y variables empezarán por minúscula y se usará la nomenclatura llamada camelCase, normalmente para las funciones será un verbo seguido de un sustantivo, por ejemplo la función donde validas el nombre, llamarla validarNombre.

Saludos. ;D
Título: Re:JavaScript evento onsubmit envío de formulario ejecutar función validar CU01142E
Publicado por: mouportador10 en 08 de Febrero 2017, 05:31
Muchisimas gracias por las recomendaciones, he tomado todos los cursos desde el principio pero hasta ahora aprendi a publicar, gracias y muchos saludos desde México!!.