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