Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] Validacion de email

Estas en el tema de Validacion de email en el foro de Javascript en Foros del Web. Que estoy haciendo mal? Me he metido en diferentes paginas para aprender a hacerlo como http://lineadecodigo.com/javascript/...on-javascript/ http://www.lawebdelprogramador.com/c...de_correo.html entre otras, y adaptar esos codigos a mi ...
  #1 (permalink)  
Antiguo 02/03/2014, 11:59
 
Fecha de Ingreso: agosto-2013
Mensajes: 103
Antigüedad: 10 años, 8 meses
Puntos: 1
Validacion de email

Que estoy haciendo mal? Me he metido en diferentes paginas para aprender a hacerlo como
http://lineadecodigo.com/javascript/...on-javascript/
http://www.lawebdelprogramador.com/c...de_correo.html
entre otras, y adaptar esos codigos a mi funcion.

Por otro lado, me aconsejariais que creara dos funciones para esto? Uno para introducir un comentario y otro para validar el email?

Un saludo y gracias por vuestra atencion

Código Javascript:
Ver original
  1. //Esta funcion sirve para introducir un comentario
  2. function introducirComentario(){
  3. //Recogemos el contenido de las cajas
  4. var texto=document.getElementById("areaDescripcion").value;
  5. var mail=document.getElementById("txtMail").value;
  6. var nombre=document.getElementById("txtNombre").value;
  7.  
  8. //Obtenemos la longitud del correo electronico y del nombre. La usaremos para que no se salga el email del contenedor
  9. var contarNombre=nombre.length;
  10. var contarMail=mail.length;
  11.  
  12. // cogemos el div comentario y...
  13. var comentario=document.getElementById("comentario");
  14. //creamos los elementos <p> </p>, <hr/>, <strong> </strong>, <em> </em> y <br/> .
  15. var crearCapa = document.createElement('p');
  16. var separacion=document.createElement('hr');
  17. var separacion2=document.createElement('hr');
  18. var negrita = document.createElement('strong');
  19. var italica = document.createElement('em');
  20. var espacio= document.createElement('br');
  21. var nuevoTexto = document.createTextNode(texto);
  22. var nuevoMail = document.createTextNode(mail);
  23. var nuevoNombre = document.createTextNode(nombre);
  24. var patron=/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/;
  25.  
  26. //Si no estan vacias cualquiera de ellas...
  27. if((mail.search(patron))&& texto!="" && nombre!="") {
  28.     //Aqui imprimimos el mensaje
  29.     comentario.appendChild(crearCapa);
  30.     crearCapa.appendChild(negrita);
  31.     crearCapa.appendChild(italica).style.marginLeft=(99-contarMail-contarNombre)+"%";
  32.     crearCapa.appendChild(separacion);
  33.     crearCapa.appendChild(nuevoTexto);
  34.     crearCapa.appendChild(separacion2);
  35.     italica.appendChild(nuevoMail);
  36.     negrita.appendChild(nuevoNombre);
  37.     return true;
  38.    
  39. }else if (texto==""||nombre==""){
  40.     alert("Un campo está vacío. Por favor, rellénalo.");
  41. }else{
  42.     alert("La dirección de email es incorrecta.");
  43. return false;
  44. }
  45. crearCapa.style.marginBottom="12%";
  46. }

Última edición por Mechabits; 02/03/2014 a las 12:57
  #2 (permalink)  
Antiguo 02/03/2014, 15:33
 
Fecha de Ingreso: agosto-2013
Mensajes: 103
Antigüedad: 10 años, 8 meses
Puntos: 1
Respuesta: Validacion de email

Que no se diga que no me esfuerzo en aprender y que busco que me den las soluciones .

Un saludo y gracias de todos modos

Código Javascript:
Ver original
  1. //validamos el correo electronico
  2. function validarEmail(email) {
  3.     expr = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
  4.     if (!expr.test(email)){
  5.         return false;
  6.     }else{
  7.         return true;
  8.     }
  9. }
  10. //Esta funcion sirve para introducir un comentario
  11. function introducirComentario(){
  12. //Recogemos el contenido de las cajas
  13. var texto=document.getElementById("areaDescripcion").value;
  14. var mail=document.getElementById("txtMail").value;
  15. var nombre=document.getElementById("txtNombre").value;
  16. //Obtenemos la longitud del correo electronico y del nombre. La usaremos para que no se salga el email del contenedor
  17. var contarNombre=nombre.length;
  18. var contarMail=mail.length;
  19. // cogemos el div comentario y...
  20. var comentario=document.getElementById("comentario");
  21. //creamos los elementos <p> </p>, <hr/>, <strong> </strong>, <em> </em> y <br/> .
  22. var crearCapa = document.createElement('p');
  23. var separacion=document.createElement('hr');
  24. var separacion2=document.createElement('hr');
  25. var negrita = document.createElement('strong');
  26. var italica = document.createElement('em');
  27. var espacio= document.createElement('br');
  28. var nuevoTexto = document.createTextNode(texto);
  29. var nuevoMail = document.createTextNode(mail);
  30. var nuevoNombre = document.createTextNode(nombre);
  31. //Si no estan vacias las dos y pasa la validacion...
  32. if(texto!="" && nombre!="" && validarEmail(mail)==true) {
  33. //Aqui imprimimos el mensaje
  34.     comentario.appendChild(crearCapa);
  35.     crearCapa.appendChild(negrita);
  36.     crearCapa.appendChild(italica).style.marginLeft=(99-contarMail-contarNombre)+"%";
  37.     crearCapa.appendChild(separacion);
  38.     crearCapa.appendChild(nuevoTexto);
  39.     crearCapa.appendChild(separacion2);
  40.     italica.appendChild(nuevoMail);
  41.     negrita.appendChild(nuevoNombre);
  42. //sino, si el texto o el nombre estan en blanco...
  43. }else if (texto==""||nombre==""){
  44.     alert("Un campo está vacío. Por favor, rellénalo.");
  45. //y si no pasa la validacion...
  46. }else if(validarEmail(mail)==false){
  47.     alert("La dirección de correo " + mail + " es incorrecta.");
  48. }
  49. crearCapa.style.marginBottom="12%";
  50. }
  51. /*
  52.     /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/
  53.     http://www.metriplica.com/es/recursos/expresiones-regulares
  54.     Se pueden encontrar ya hechas específicamente por internet.
  55. */
  56. //cuando cargue la pagina web...
  57. window.onload=function(){
  58. //ENVIAR COMENTARIO
  59. var enviar=document.getElementById("btnEnviar");
  60. var pulsaBtn=enviar.addEventListener("click", introducirComentario, false);
  61. }


Código HTML:
Ver original
  1. <div id="comentario"></div>
  2.     <label name="contacto"><strong>Deja tu comentario:</strong></label> <br /> <br />
  3.             <label for="txtNombre">Nombre</label>
  4.             <input id="txtNombre" type="text"/>
  5.             <label for="txtMail">eMail</label>
  6.             <input id="txtMail" type="text"/>
  7.             <textarea type="textareas" id="areaDescripcion" cols="50" rows="10" ></textarea>
  8.             <br />
  9.             <input type="submit" id="btnEnviar" value="Enviar"/>
  10.             <input type="reset" name="btnReiniciar" value="Restablecer valores por defecto"/>

Etiquetas: email, funcion, html, validacion
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 03:16.