Foros del Web » Programando para Internet » Javascript »

Validar INPUT de E-Mail con Javascript

Estas en el tema de Validar INPUT de E-Mail con Javascript en el foro de Javascript en Foros del Web. Hola buenas, tengo un formulario y voy validando todos los campos uno por uno, he llegado al campo de E-Mail y necesito que se valide ...
  #1 (permalink)  
Antiguo 27/02/2013, 06:46
 
Fecha de Ingreso: febrero-2013
Mensajes: 119
Antigüedad: 11 años, 10 meses
Puntos: 2
Validar INPUT de E-Mail con Javascript

Hola buenas, tengo un formulario y voy validando todos los campos uno por uno, he llegado al campo de E-Mail y necesito que se valide con un formato correcto como: [email protected].

He mirado muchas guías en Internet pero no se adaptan a mi caso. Yo valido los campos de esta forma:

Código:
function valida_envia(){
//-----------------------------------------USUARIO NOMBRE--------------------------------------------
   	// USUARIO_NOMBRE CAMPO NO VACÍO
   	if (document.formulario.usuario_nombre.value.length==0){ 
      	 alert("Tiene que escribir su nombre") 
      	 document.formulario.usuario_nombre.focus() 
      	 return false; 
   	}
El ejemplo muestra como utiliza las variables (document.formulario.usuario_nombre.value.length), pues necesito que se valide el campo de e-mail de la misma forma, todo dentro de una única función (valida_envia)

Gracias de antemano.
  #2 (permalink)  
Antiguo 27/02/2013, 07:19
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: Validar INPUT de E-Mail con Javascript

Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <title>titulo</title>
  5. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  6.  
  7. <style type="text/css">
  8. /*<![CDATA[*/
  9.  
  10.  
  11.  
  12. label{
  13. width: 150px;
  14. display: inline-block;
  15. }
  16.  
  17. /*]]>*/
  18. <script type="text/javascript">
  19.  
  20. function validar(){
  21. var nombre = document.getElementById('nombre').value;
  22. var email = document.getElementById('email').value;
  23. var email2 = document.getElementById('email2').value;
  24. var formato = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
  25.  
  26. // validamos si el campo nombre está vacío o no
  27. nombre = nombre.replace(/(<([^>]+)>)/ig,""); // quitás posible código html
  28. nombre = nombre.replace(/^\s+/g,'').replace(/\s+$/g,'');// limpias espacios en blanco al inicio y final del nombre
  29. if(nombre == ''){
  30. alert('Ingrese su nombre')
  31. return false;
  32. }
  33.  
  34. var v_email = formato.test(email);
  35.  
  36. if((v_email != true)||(email == "")){
  37. alert('Email no válido');
  38. return false;
  39. }
  40.  
  41. var v_email2 = formato.test(email2);
  42.  
  43. if((v_email2 != true)||(email2 == "")){
  44. alert('Email2 no válido');
  45. return false;
  46. }
  47.  
  48. /// Si no hubo ningún error, el form se procesa
  49.  
  50. alert('gracias ' + nombre);
  51.  
  52. }
  53.  
  54. </script>
  55. </head>
  56. <div>
  57. <form action="#" onsubmit="return validar();">
  58. <label for="nombre">Nombre: </label><input type="text" value="" id="nombre" name="nombre" /><br />
  59. <label for="email">Email: </label><input type="text" value="" id="email" name="email" /><br />
  60. <label for="email2">Email 2: </label><input type="text" value="" id="email2" name="email2" /><br />
  61. <input type="submit" class="boton" value="eeeee" />
  62. </form>
  63. </div>
  64. </body>
  65. </html>

Esto ha sido tratado muchas veces en el foro, por favor para la próxima esforzate en tus búsquedas
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.

Etiquetas: campos, e-mail, formulario, input
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:00.