Ver Mensaje Individual
  #3 (permalink)  
Antiguo 31/10/2008, 10:02
Avatar de gVenom
gVenom
 
Fecha de Ingreso: julio-2008
Ubicación: Costa Rica
Mensajes: 1.458
Antigüedad: 15 años, 10 meses
Puntos: 53
Respuesta: Ayuda con validación de Email

Hola matak, fijate que ya traté de complementar mi código con el que sale ahi pero no me funciona. queda así:

Código HTML:
<script LANGUAGE="JavaScript">

function Validar(form)
{
var okem= ce.email.value;

var localOK = /^(([A-Za-z0-9!#$%&'*+/=?^_`{|}~-][A-Za-z0-9!#$%&*+/=?^_{|}~\.-]{0,63})|(\[^(\\|\)]{0,62}\))$/;
var ipOK = /^[?[0-9.]+]?$/;
var dominoOK = /^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|([A-Za-z0-9]+))$/;

var email_array = okem.split('@');

if (form.Nombre.value == "")
{ alert("Por favor ingrese su nombre"); form.Nombre.focus(); return; }

if (email_array.length < 2 || email_array.length > 2) {
alert("La dirección de email 1  ("+ email_array.length +") no es válida.");
       document.forms.sendmail.email.focus();
       return (false);
    }

// Incorrecto número de caracteres en alguna de las dos partes
if (email_array[0].length  < 1 || email_array[1].length  < 1) {
alert("La dirección de email 2 ("+ email_array[0].length +") -- ("+ email_array[1].length +") no es válida.");
       document.forms.sendmail.email.focus();
       return (false);
    }

var local_array = email_array[0].split('.');
for (i = 0; i < local_array.length; i++)
{
if (!localOK.test(local_array[i])) {
alert("La dirección de email 3 ("+ local_array[i] +") no es válida.");
       document.forms.sendmail.email.focus();
       return (false);
    }
}

// Se revisa si el dominio es una IP. Si no, debe ser un nombre de dominio válido
if (!ipOK.test(okem)) {

var dominio_array = email_array[1].split('.');
// Incorrecto número de secciones por exceso o defecto para ser un dominio
if (dominio_array.length < 2 || dominio_array.length > 3) {
alert("La dirección de email 4 ("+ dominio_array.length +") no es válida.");
       document.forms.sendmail.email.focus();
       return (false);
    }

for (i = 0; i < dominio_array.length; i++)
{
if (!dominoOK.test(dominio_array[i])) {
alert("La dirección de email 5 ("+ dominio_array[i] +") no es válida.");
       document.forms.sendmail.email.focus();
       return (false);
    }
        }
}
else
return (true)
} 

if (form.Domicilio.value == "")
{ alert("Por favor ingrese su domicilio"); form.Domicilio.focus(); return; }

if (form.Telefono.value == "")
{ alert("Por favor ingrese su número de teléfono"); form.Telefono.focus(); return; }

if (form.Empresa.value == "")
{ alert("Por favor ingrese el nombre de su empresa"); form.Empresa.focus(); return; }

if (form.NumeroTarjeta.value == "")
{ alert("Por favor ingrese los números de su tarjeta de crédito"); form.NumeroTarjeta.focus(); return; }

if (form.Codigo.value == "")
{ alert("Por favor ingrese el código de su tarjeta de crédito"); form.Codigo.focus(); return; }

if (form.NombreTitular.value == "")
{ alert("Por favor indique el nombre del titular de la tarjeta de crédito"); form.NombreTitular.focus(); return; }

if (form.Email.value.indexOf('@', 0) == -1 ||
form.Email.value.indexOf('.', 0) == -1)
{ alert("Dirección de e-mail inválida"); form.Email.focus(); return; }

form.submit();
}

</script>