• Jueves 18 de Abril de 2024, 23:12

Autor Tema:  Validación De Mail  (Leído 2492 veces)

elisa44

  • Miembro activo
  • **
  • Mensajes: 33
    • Ver Perfil
Validación De Mail
« en: Viernes 23 de Junio de 2006, 02:56 »
0
Hola,
Tengo una tabla dinámica que se llena con un Arraylist, uno de los campos es un mail, tengo la función que valida mail, pero no se como pasarle los parámetros, la idea es que cuando modifico el mail al chequear el checkbox correspondiente me mande un alert si el mail está incorrecto. Ojala alguien pueda ayudarme.
Gracias

PD: no solo tiene que funcionar en el IE, si no también el FireFox.

x.cyclop

  • Miembro de PLATA
  • *****
  • Mensajes: 1039
  • Nacionalidad: mx
    • Ver Perfil
Re: Validación De Mail
« Respuesta #1 en: Viernes 23 de Junio de 2006, 05:28 »
0
Código: Text
  1.   if (form.email.value !="")
  2.     {  
  3.       if (form.email.value.indexOf("@") != "-1" && form.email.value.indexOf(".") !="-1" && form.email.value.indexOf(" ")=="-1" &&form.email.value.length>=8)
  4.       // El e-mail es valido
  5.         return true;
  6.       else
  7.         {
  8.       // El e-mail es invalido
  9.       alert("El email no existe");
  10.         return false;
  11.       }
  12.       }
  13.  

¿Eso? :blink:

- Great works aren't produced on the first try. [Ernest Hemingway]
- Be ambitious, yet realistic in your dreams. Do something that makes a positive impact. Don’t let the nay-sayers get you down. [Bjarne Stroustrup]

elisa44

  • Miembro activo
  • **
  • Mensajes: 33
    • Ver Perfil
Re: Validación De Mail
« Respuesta #2 en: Viernes 23 de Junio de 2006, 14:53 »
0
Gracias, pero la función la tengo, el problema es como le paso los parametros, por ejemplo:

"form.email.value.indexOf("@")", cuando mi value es: value="<%=strArray[3]%>" y el id de la fila es id="<%=strArray[0]%>##email" igual el name, y en la fila hay un checkbox, la idea es que de alguna forma dentro del input llamar a la función y cuando selecciono el checkbox me mande el mensaje que el mail esta malo, probe con:
onChange="validaEmail(<%=strArray[3]%>);", tambien con onblur="return validaEmail(<%=strArray[3]%>); y no funciona.
Saludos

PD: tengo el mismo problema con el rut, también tengo la función.

ing_marco

  • Miembro MUY activo
  • ***
  • Mensajes: 263
    • Ver Perfil
Re: Validación De Mail
« Respuesta #3 en: Viernes 23 de Junio de 2006, 21:34 »
0
Dejame ver si entiendo la IDEA,tienes una tabla, alli mismo hay un text donde puede ingresar el mail, esto lo tienes en un <TD></TD>, en otro <TD></TD> hay un check para que cuando le des click alli se verifique??

Si es asi encontes usaremos DOM para poder entrar en la <TD></TD> y sacar el dato de la caja de texto luego se lo pasas a la funcion que valida y punto.

Empecemos:
hare este ejemplo con una tabla de una fila y 2 columnas
Código: Text
  1. &#60;table&#62;
  2. &#60;tr id=&#34;TR1&#34;&#62;
  3. &#60;td&#62;&#60;INPUT type=&#34;text&#34;&#62;
  4. &#60;/td&#62;
  5. &#60;td&#62;&#60;INPUT type=&#34;checkbox&#34; onclick:Validar(TR1)&#62;
  6. &#60;/td&#62;
  7. &#60;/tr&#62;
  8. &#60;tr id=&#34;TR2&#34;&#62;
  9. &#60;td&#62;&#60;INPUT type=&#34;text&#34;&#62;
  10. &#60;/td&#62;
  11. &#60;td&#62;&#60;INPUT type=&#34;checkbox&#34; onclick:Validar(TR2)&#62;
  12. &#60;/td&#62;
  13. &#60;/tr&#62;
  14. &#60;/table&#62;
  15.  

Esa sera la tabla que tu debes de generar de alguna forma, eso te lo dejo para ti.

Luego pones una funcion de este tipo:
Código: Text
  1. function Validar(IdFila)
  2. {
  3. var Row=document.getElementById(IdFila);
  4. var Email=Row.cells[0].firstChild.value;
  5. /*
  6. luego
  7. validas el Email y si es correcto que grabe o que haga lo que tu deseas que haga
  8. */
  9. }
  10.  

Espero te sirva, si tienes dudas me comunicas yo te puedo seguir ayudando

Te dejo una imagen de una aplicacion k hice dinamica, donde hay una tabla y cuando pones editar aparecen textbox,combos y botones dinamicamente en la misma final y alli mismo puedes modificar, pero tienes k valdiar algunas cosas como la fecha, las horas.
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.
MARCO DIAZ
Ing_Marco
Bachiller Ing de Sistemas.
UNT
Trujillo-Peru

elisa44

  • Miembro activo
  • **
  • Mensajes: 33
    • Ver Perfil
Re: Validación De Mail
« Respuesta #4 en: Viernes 23 de Junio de 2006, 21:58 »
0
Gracias, pero hay un problema, yo no se cuantas filas van a apareser en la tabla, si yo pongo onclick:Validar(TR2) en el checkbox, me va a validar todos los mail de la tabla, voy a tratar de mandarte el jsp, ya que lo hice antes y no resulto.
Saludos
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.

x.cyclop

  • Miembro de PLATA
  • *****
  • Mensajes: 1039
  • Nacionalidad: mx
    • Ver Perfil
Re: Validación De Mail
« Respuesta #5 en: Viernes 23 de Junio de 2006, 22:00 »
0
Código: Text
  1. &#60;input type=&#34;checkbox&#34; value=&#34;1&#34; onclick=&#34;validar(&#60;%=strArray[3]%&#62;)&#34; /&#62;&#60;label&#62;Validar&#60;/label&#62;
  2.  

- Great works aren't produced on the first try. [Ernest Hemingway]
- Be ambitious, yet realistic in your dreams. Do something that makes a positive impact. Don’t let the nay-sayers get you down. [Bjarne Stroustrup]

Altareum

  • Miembro MUY activo
  • ***
  • Mensajes: 327
    • Ver Perfil
    • http://www.avian.com.ar
Re: Validación De Mail
« Respuesta #6 en: Domingo 25 de Junio de 2006, 19:54 »
0
Hola Elisa44!

Espero que eto te sirva:

Traté de simplicarlo lo más que pude así quedaba claro el concepto.

Código: Text
  1.  
  2. &#60;script language=&#34;javascript&#34;&#62;
  3. function validarMail(id){
  4.  
  5.   var mail = eval('document.FrmMails.mail'+id+'.value');
  6.   var reg = new RegExp(&#34;^[a-zA-Z0-9._-]+@[a-zA-Z0-9-]+&#092;.[a-zA-Z.]{2,5}&#036;&#34;, &#34;i&#34;);
  7.   if(mail.search(reg))
  8.     alert('La dirección es válida');
  9.   else
  10.     alert('La dirección es inválida');
  11. }
  12. &#60;/script&#62;
  13. &#60;body&#62;
  14. &#60;form name=&#34;FrmMails&#34;&#62;
  15. &#60;input type=&#34;text&#34; name=&#34;mail0&#34; value=&#34;&#34;&#62;   &#60;input type=&#34;checkbox&#34; onclick=&#34;javascript:validarMail(0)&#34;&#62;&#60;br&#62;
  16. &#60;input type=&#34;text&#34; name=&#34;mail1&#34; value=&#34;&#34;&#62;   &#60;input type=&#34;checkbox&#34; onclick=&#34;javascript:validarMail(1)&#34;&#62;&#60;br&#62;
  17. &#60;input type=&#34;text&#34; name=&#34;mail2&#34; value=&#34;&#34;&#62;   &#60;input type=&#34;checkbox&#34; onclick=&#34;javascript:validarMail(2)&#34;&#62;&#60;br&#62;
  18. &#60;/form&#62;
  19. &#60;/body&#62;
  20.  
  21.  


Explico un poco el código, el checkbox (al hacer click sobre él), envía un identificador a la función, para saber a que campo de email está relacionado. Veamos el primer campo, envía un 0, este lo recibe la función validarMail.
Con este id, la función busca el input mail0 y asigna su valor a la variable mail
Código: Text
  1. var mail = eval('document.FrmMails.mail'+id+'.value');
  2.  
Por último, valida la dirección utilizando una expresión regular:
Código: Text
  1. if(mail.search(reg))
  2.  
...



La verdad es que, la función regular que puse la saqué de internet, pero no confío mucho en la misma, no se si funciona bien o no, pero depende también del nivel que necesites filtrar, busca en internet que hay muchísimas.


Saludos.
Altareum.
El postre!, el postre!, el postre!, el postre!, el postre!, el postre!.....
 | Klinka | Kiree | Avian |

giomar

  • Miembro MUY activo
  • ***
  • Mensajes: 270
    • Ver Perfil
Re: Validación De Mail
« Respuesta #7 en: Lunes 7 de Agosto de 2006, 20:37 »
0
y si escribo esto mimail@miservidor.com.pe. no lo valida,  X.Cyclop :whistling:
Giomar B.
Desarrollador Web Profesional


elisa44

  • Miembro activo
  • **
  • Mensajes: 33
    • Ver Perfil
Re: Validación De Mail
« Respuesta #8 en: Martes 8 de Agosto de 2006, 04:07 »
0
Ojo cuando se valida mail, el código es muy largo.......

Saludos