Ver Mensaje Individual
  #2 (permalink)  
Antiguo 27/08/2009, 12:47
Avatar de Adler
Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: Problema con expresion regular fecha

Hola

Prueba con esta función

Código javascript:
Ver original
  1. function validaFecha(strValue) {
  2. var objRegExp = /^\d{1,2}\1\d{1,2}\1\d{4}$/
  3.  
  4.   if(!objRegExp.test(strValue))
  5.     return false;
  6.   else{
  7.     var strSeparator = strValue.substring(2,3)
  8.     var arrayDate = strValue.split(strSeparator);
  9.  
  10.     var arrayLookup = { '01' : 31,'03' : 31, '04' : 30,'05' : 31,'06' : 30,'07' : 31,'08' : 31,'09' : 30,'10' : 31,'11' : 30,'12' : 31}
  11.     var intDay = parseInt(arrayDate[0],10);
  12.  
  13.  
  14.     if(arrayLookup[arrayDate[1]] != null) {
  15.       if(intDay <= arrayLookup[arrayDate[1]] && intDay != 0)
  16.         return true;
  17.     }
  18.    
  19.    
  20.     var intMonth = parseInt(arrayDate[1],10);
  21.     if (intMonth == 2) {
  22.        var intYear = parseInt(arrayDate[2]);
  23.        if (intDay > 0 && intDay < 29) {
  24.            return true;
  25.        }
  26.        else if (intDay == 29) {
  27.          if ((intYear &#37; 4 == 0) && (intYear % 100 != 0) ||
  28.              (intYear % 400 == 0)) {
  29.              return true;
  30.          }  
  31.        }
  32.     }
  33.   }  
  34.   return false;
  35. }

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />