JavaScript - Ayudenme con esta validación de email

 
Vista:

Ayudenme con esta validación de email

Publicado por Ricardo J. Ríos R. (12 intervenciones) el 28/11/2008 21:10:49
Hola a todos alguien me puede decir que hay de malo con este script?

function emailValidator(elem, helperMsg)
{
var emailExp = /^[w-.+]+@[a-zA-Z0-9.-]+.[a-zA-z0-9]{2,4}$/;
if(elem.value.match(emailExp))
{
return true;
}
else
{
alert(helperMsg);
elem.focus();
return false;
}
return true;
}

Pues me funcionan perfectamente todas las demas verificaciones si quito el del email, copio el codigo completo aqui:

<script type='text/javascript'>

function formValidator(){
// Make quick references to our fields
var nombre = document.getElementById("nombre");
var rif = document.getElementById("rif");
var tipo = document.getElementById("tipo");
var direccion = document.getElementById("direccion");
var telefono = document.getElementById("telefono");
var celular = document.getElementById("celular");
var correo = document.getElementById("correo");

// Check each input in the order that it appears in the form!
if(notEmpty(nombre, "Por favor ingrese algun nombre")){
if(notEmpty(rif, "Por favor ingrese algun rif") && isAlphanumeric(rif, "Por favor sólo ingrese letras y números para el rif")){
if(madeSelection(tipo, "Por favor seleccione un tipo de proveedor")){
if(notEmpty(direccion, "Por favcor ingrese la dirección del proveedor")){
if(notEmpty(telefono, "Por favor ingrese un número telefonico del proveedor") && isNumeric(telefono, "Sólo puede ingresar números para un telefono") && isTelnumber(telefono, "El número de telefono no puede tener más ni menos de 11 caracteres (sólo números)")){
if(notEmpty(celular, "Por favor ingrese un número de celular del proveedor") && isNumeric(celular, "Sólo puede ingresar números para un celular") && isTelnumber(celular, "El número de celular no puede tener más ni menos de 11 caracteres (sólo números)")){
if(notEmpty(correo, "Por favor ingrese un correo del proveedor") && emailValidator(correo, "Por favor ingrese un correo valido")){
return true;
}
}
}
}
}
}
}
return false;

}

function notEmpty(elem, helperMsg){
if(elem.value.length == 0){
alert(helperMsg);
elem.focus(); // set the focus to this input
return false;
}
return true;
}

function isTelnumber(elem, helperMsg){
if(elem.value.length != 11){
alert(helperMsg);
elem.focus(); // set the focus to this input
return false;
}
return true;
}

function isNumeric(elem, helperMsg){
var numericExpression = /^[0-9]+$/;
if(elem.value.match(numericExpression)){
return true;
}else{
alert(helperMsg);
elem.focus();
return false;
}
}

function isAlphabet(elem, helperMsg){
var alphaExp = /^[a-zA-Z]+$/;
if(elem.value.match(alphaExp)){
return true;
}else{
alert(helperMsg);
elem.focus();
return false;
}
}

function isAlphanumeric(elem, helperMsg){
var alphaExp = /^[0-9a-zA-Z]+$/;
if(elem.value.match(alphaExp)){
return true;
}else{
alert(helperMsg);
elem.focus();
return false;
}
}

function lengthRestriction(elem, min, max){
var uInput = elem.value;
if(uInput.length >= min && uInput.length <= max){
return true;
}else{
alert("Please enter between " +min+ " and " +max+ " characters");
elem.focus();
return false;
}
}

function madeSelection(elem, helperMsg){
if(elem.value == "Selec. Tipo Proveedor"){
alert(helperMsg);
elem.focus();
return false;
}else{
return true;
}
}
/*function emailValidator(elem, helperMsg)
{
var emailExp = /^[w-.+]+@[a-zA-Z0-9.-]+.[a-zA-z0-9]{2,4}$/;
if(elem.value.match(emailExp))
{
return true;
}
else
{
alert(helperMsg);
elem.focus();
return false;
}
return true;
}*/
</script>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder