Autor Tema: JavaScript validar que campo formulario contenga número mínimo letras CU01142E  (Leído 4958 veces)

Dimitar Stefanov

  • Experto
  • *****
  • Mensajes: 598
    • Ver Perfil
Solucion del ejercicio CU01142E del curso JavaScript desde cero.

Código HTML:

Código: [Seleccionar]
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<meta name="description" content="Curso JavaScript"/>
<meta name="keywords" content="programar,cursos,JavaScript,aprenderaprogramar.com"/>
<link rel="stylesheet" type="text/css" href="CU01142E.css"/>
<script type="text/javascript" src="CU01142E.js"></script>
</head>
<body>
<div id="contenedor">
<form name="formulario1" method="get" onsubmit="validar()">
<h2>Formulario ejemplo cadenas Texto</h2>
<label for="nombre"><span>Nombre:</span><input type="text" id="nombre" name="nombre"></input></label>
<label for="apellidos"><span></span>Apellidos:<input type="text" id="apellidos" name="apellidos"></input></label>
<label for="email"><span>Correo Electrónico:</span><input type="text" id="email" name="email"></input></label>
<label><input type="submit" value="Enviar"></input><input type="reset" value="Cancelar"></input></label>
</form>
</div>

</body>
</html>

Código CSS:

Código: [Seleccionar]
body{
font-family: sans-serif;
text-align: center;
background-color: grey;
font-size: 2em;
}
label{
display: block;
margin: 5px;
}

Código JavaScript:

Código: [Seleccionar]
function validar(){
var datos=document.getElementsByTagName('input');
if(datos[0].value.length<3){
alert('El nombre no cumple tener al menos tres letras');
}
if((datos[2].value.indexOf('@')==-1)&&(datos[2].value.indexOf('.')==-1)){
alert('Falta el símbolo @ y . en el correo electrónico');
}else if(datos[2].value.indexOf('@')==-1){
alert('Falta el símbolo @ en el correo electrónico');
}else if(datos[2].value.indexOf('.')==-1){
alert('Falta el símbolo . en el correo electrónico');
}
datos[2].value=datos[2].value.toLowerCase();
datos[2].value=datos[2].value.replace(/at/g,'@');
datos[2].value=datos[2].value.replace(/ /g,'');
alert(datos[2].value); //comprobar si los valores del campo "correo electrónico" se envían bien.
}


Gracias.
« Última modificación: 15 de Febrero 2016, 11:58 por César Krall »

bermartinv

  • Avanzado
  • ****
  • APR2.COM
  • Mensajes: 298
    • Ver Perfil
Re:CU01142E JavaScript cadenas texto
« Respuesta #1 en: 11 de Febrero 2016, 23:32 »
Funciona, bien pensado.
 Pero porfa, pon todo el codigo junto(HTML,CSS,JavaScript) sino es un coñazo luego copiar y pegar.

Dimitar Stefanov

  • Experto
  • *****
  • Mensajes: 598
    • Ver Perfil
Re:CU01142E JavaScript cadenas texto
« Respuesta #2 en: 12 de Febrero 2016, 13:24 »
Buenas, bermartinv (escribo tu nick en minúscula, no por tenerte menos respeto, sino que no se tu nombre y no sé si te llamas Bermartin o es un pseudónimo).

Al lío, gracias por corregirme el código. Y sobre los códigos separados, pues sí, tienes razón, es un coñazo copiarlos de uno en uno, pero cuando hice el curso HTML desde cero, siempre ponían los códigos CSS aparte. Suponía que así era mas "formal". Tomo nota, a partir de ahora lo pondré todo en un mismo código.

Saludos.

PD: ah, puse el útlimo "alert" para ver si escribías el mail en mayúsculas realmente se convertían en minúsculas :)

pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
Re:CU01142E JavaScript cadenas texto
« Respuesta #3 en: 13 de Febrero 2016, 23:36 »
Hola dimiste.

Solo apuntar una cosa, cuando se introduce un correo electrónico del tipo:
"pepe at gml.com"
Primero da error de que falta @ y no debería dar ese error puesto que posteriormente se sustituye "at" por "@" automáticamente.

Saludos.


Dimitar Stefanov

  • Experto
  • *****
  • Mensajes: 598
    • Ver Perfil
Buenas, Pedro.

Como en el ejercicio ponía:

Citar
b) Comprobar que el correo electrónico contiene el carácter @ (arroba) y el carácter . (punto). De no ser así, deberá aparecer un mensaje indicando que al correo electrónico le falta uno o ambos caracteres. Por ejemplo si se trata de enviar pacogmail.com deberá aparecer el mensaje: “Falta el símbolo @ en el correo electrónico”

pensé que también debería de aparecer ese error.

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".