Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/11/2004, 22:58
Avatar de santiagozky
santiagozky
Colaborador
 
Fecha de Ingreso: julio-2001
Ubicación: en un lugar de Puebla de
Mensajes: 2.498
Antigüedad: 22 años, 9 meses
Puntos: 1
problemas validando fecha

estoy intentando validar una fecha de un formulario que capturo con un input, el caso es que necesito que mande un alert si se ponen fechas anteriores a septiembre del 2003, esto es lo que tengo

function validafecha(fecha)
{
if(!(/^\d{2}\/{1}\d{2}\/{1}\d{4}$/gi.test(fecha)))
alert("la fecha no esta en el formato requerido (dd/mm/yyyy)");

else{
dia=parseInt(fecha.substring(0,2));
mes= parseInt(fecha.substring(3,5));
year= parseInt(fecha.substring(6,10));

if(dia>31) alert("dia malo");
if(mes>12) alert("mes malo");
if((year<=2003)&&(mes<9))
alert("fecha erronea");

}
}

el atributo fecha es el valor del input
<input name="fecha" value="dd/mm/yyyy" onBlur="validafecha(fecha.value);">


la expresion regular checa que el formato sea dd/mm/yyy, pero funciona esporadicamente, no encuentro el error, y el alert de la fecha no funciona bien, ya intente varias maneras y no me sale.

ps- necesito usar expresiones regulares asi como un solo input para toda la fecha forsosamente

espero que me puedan ayudar
__________________
Usa titulos para los mensajes que describan tu problema, esto facilitará a los demas a ayudarte, y a mas personas a resolver problemas similares.

santiagozky AT gmail DOT com