Google Web after-hours

Contador en flash JSFL Traductor
Uno de los detalles que he visto descuidados a menudo en formularios flash, es la falta de validación del campo e-mail, realmente puede llegar a ser tedioso, he construido el prototypo isMail para hacer esta tarea más sencilla.

//
// – isMail // tonilopez//
//
String.prototype.isMail = function() {
if (this.indexOf(“@”)>0 && this.indexOf(“@”) == this.lastIndexOf(“@”)) {
if (this.lastIndexOf(“.”)>this.indexOf(“@”)+1 && this.lastIndexOf(“.”)<this.length-2) {
return true;
}
}
};
//
//– ejemplo de uso
//
email.onKillFocus = function() {
if (!this.text.isMail()) {
this.text = “e-mail incorrecto”;
}
};

Validaciones:

1. debe contener al menos un carácter antes del sí mbolo (@)

this.indexOf("@")

2. unicamente puede contener un sí mbolo (@)

this.indexOf("@") == this.lastIndexOf("@"))

3. el último punto debe ir tras el sí mbolo (@) y debe existir como mí nimo un carácter entre ambos

this.lastIndexOf(".")>this.indexOf("@")+1

4. tras el último punto , deben existir como mí nimo dos carácteres

this.lastIndexOf(".")

Nota:

Algunas direcciones e-mail, pueden llevar hasta 2 puntos, debido a ello, utilizo lastIndexOf, para hacer las validaciones del sí mbolo (.) punto.

Referencia actionScript

String.indexOf



Sintaxis
myString.indexOf(subcadena, [inicioÍndice])

Parámetros
subcadena Número entero o cadena que especifica la subcadena que se debe buscar dentro de myString.

inicioÍndice Número entero que especifica el punto de myString en el que debe iniciarse la búsqueda de la subcadena. Este parámetro es opcional.

Descripción
Método; busca en la cadena y devuelve la posición de la primera aparición de la subcadena especificada. Si no se encuentra el valor, el método devuelve -1.

String.lastIndexOf



Sintaxis
myString.lastIndexOf(subcadena, [inicioÍndice])

Parámetros
subcadena Número entero o cadena que especifica la cadena en la que se va a buscar.

inicioÍndice Número entero que especifica el punto en el que debe iniciarse la búsqueda de la subcadena. Este parámetro es opcional.

Descripción
Método; busca en la cadena de derecha a izquierda y devuelve el í ndice de la última aparición de la subcadena que se encuentra antes de inicioÍndice dentro de la cadena de llamada. Si no se encuentra ninguna subcadena, el método devuelve -1.

3 Responses to 'isMail prototype'

  1. dani Says:

    ei Toni,
    realmente es algo que deberia implementarse siempre que haya un campo para el mail.
    Hace tiempo vi un email validator de Jonas Galvez muy completo que para el que tenga tripas lo puede ver aqui:
    http://www.onrelease.org/jonas/scripts/string_isemail.html

    Saludos :D

  2. oriol Says:

    hola toni! no hi ha res com tenir una mica de temps per navegar i trobar maravelles com aquesta!
    merci

    per cert, anfibic.com ja està online…. per si tens 5 minuts per donar-li una ulladeta ;)

    bones vacances (si en fas)

  3. tonilopez Says:

    Hola Oriol,

    muy guapa la web, enhorabuena.