356 votos

Validación de correo electrónico utilizando jQuery

Soy nuevo en jQuery y se preguntaba cómo usarla para validar direcciones de correo electrónico.

704voto

Fabian Puntos 6438

Usted puede utilizar javascript viejo regular para:

function IsEmail(email) {
  var regex = /^([a-zA-Z0-9_.+-])+\@(([a-zA-Z0-9-])+\.)+([a-zA-Z0-9]{2,4})+$/;
  return regex.test(email);
}

166voto

Manish Shrivastava Puntos 4380

jQuery función para validar Email

No me gusta usar plugins, especialmente cuando mi forma sólo tiene un campo que debe ser validado. Uso de esta función y lo llaman cada vez que necesito para validar un campo de formulario de correo electrónico.

 function validateEmail($email) {
  var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
  if( !emailReg.test( $email ) ) {
    return false;
  } else {
    return true;
  }
}

y ahora a usar esto

if( !validateEmail(emailaddress)) { /* do stuff here */ }

¡ Salud!

41voto

Nick Craver Puntos 313913

Me gustaría utilizar el jQuery validation plugin para un par de razones.

Validados, ok genial, ¿y ahora qué? Usted necesita mostrar el error, manejar borrando cuando es válido, mostrando cómo muchos de los errores de total tal vez? Hay un montón de cosas que se pueden manejar para usted, no hay necesidad de re-inventar la rueda.

Además, otra gran ventaja es que está alojado en un CDN, la versión actual en el momento de esta respuesta se puede encontrar aquí: http://www.asp.net/ajaxLibrary/CDNjQueryValidate16.ashx Esto significa tiempos de carga más rápido para el cliente.

38voto

Andrew Bashtannik Puntos 304

Mira http: //bassistance.de/jquery-plugins/jquery-plugin-validation/. Es agradable jQuery plugin, que permitan para construir potente sistema de validación de formularios. Hay algunas muestras útiles aquí. Entonces, validación de campo de correo electrónico en forma se verá así:

$("#myform").validate({
  rules: {
    field: {
      required: true,
      email: true
    }
  }
});

Consulte correo electrónico método documentación para más información y muestras.

14voto

Robin Orheden Puntos 1787

Yo recomendaría Verimail.jstambién posee un plugin de JQuery.

¿Por qué? Verimail es compatible con los siguientes:

  • Validación de sintaxis (de acuerdo a RFC 822)
  • IANA TLD validación
  • Sugerencia de ortografía de la mayoría de los dominios y dominios de correo electrónico
  • Negar temporal de la cuenta de correo electrónico de dominios tales como la mailinator.com

Así que, además de la validación, Verimail.js también te da sugerencias. Así que si usted escribe un correo electrónico con el mal TLD o dominio que es muy similar al común de dominio de correo electrónico (hotmail.com, gmail.com, etc.), se puede detectar este y sugerir una corrección.

Ejemplos:

  • test@gnail.con - > ¿te refieres a prueba@gmail.com?
  • test@hey.nwt - > ¿te refieres a prueba@hey.neta?
  • test@hottmail.com - > ¿te refieres a prueba@hotmail.com?

Y así sucesivamente..

Para utilizar con jQuery, basta con incluir verimail.jquery.js en su sitio y ejecutar la siguiente función:

$("input#email-address").verimail({
    messageElement: "p#status-message"
});

El mensaje de elemento es un elemento en el que un mensaje será mostrado. Esto puede ser de todo, desde "Su correo electrónico no es válido" a "¿quiso decir ...?".

Si usted tiene una forma y desea restringir, de manera que no puede ser enviado a menos que el correo electrónico es válida, entonces usted puede comprobar el estado de la getVerimailStatus-función, como se muestra a continuación:

if($("input#email-address").getVerimailStatus() < 0){
    // Invalid
}else{
    // Valid
}

Esta función devuelve un entero, el código de estado de acuerdo con el objeto Comfirm.AlphaMail.Verimail.Status. Pero la regla general es que todos los códigos, por debajo de 0 es indicando los códigos de errores.

Iteramos.com

Iteramos es una comunidad de desarrolladores que busca expandir el conocimiento de la programación mas allá del inglés.
Tenemos una gran cantidad de contenido, y también puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X