Foros del Web » Programando para Internet » Javascript »

necesito poder validar esta fecha

Estas en el tema de necesito poder validar esta fecha en el foro de Javascript en Foros del Web. Hola foreros. Actualamente estoy utilizando esta funcion para validar los datos ingresados en un campo de texto con formato dd/mm/aaaa. De esta manera, solo se ...
  #1 (permalink)  
Antiguo 11/09/2006, 07:14
 
Fecha de Ingreso: junio-2006
Mensajes: 80
Antigüedad: 17 años, 10 meses
Puntos: 0
Pregunta necesito poder validar esta fecha

Hola foreros. Actualamente estoy utilizando esta funcion para validar los datos ingresados en un campo de texto con formato dd/mm/aaaa. De esta manera, solo se ingresan fechas. Se valida a medida que se completa por el evento onkeypress. Lo que no pude lograr es, que si hay un valor erroneo, ademas de mostrar el cartel de alerta, que borre los datos del campo, y por otro lado, cuando ingrese 8 caracteres( o sea la fecha completa y bien escrita) valide si la fecha es menor o igual a hoy. De ser mayor a hoy, no quiero que derive. Disculpen que los moleste con esto, pero mi fuerte es asp, y no estoy muy afinado con js.

aca va la funcion

Código HTML:
function currencyFormat(fld, milSep, decSep, e) { 
    var sep = 0; 
    var key = ''; 
    var i = j = 0; 
    var len = len2 = 0; 
    var strCheck = '0123456789'; 
    var aux = aux2 = ''; 
    var whichCode = (window.Event) ? e.which : e.keyCode; 
    if (whichCode == 13) return true; // Enter 
    key = String.fromCharCode(whichCode); // Get key value from key code 
    if (strCheck.indexOf(key) == -1) return false; // Not a valid key 
    len = fld.value.length; 
    for(i = 0; i < len; i++) 
     if ((fld.value.charAt(i) != decSep)) break; 
    aux = ''; 
    for(; i < len; i++) 
     if (strCheck.indexOf(fld.value.charAt(i))!=-1) aux += fld.value.charAt(i); 
    aux += key; 
    len = aux.length; 
    if (len == 0) fld.value = ''; 
    if (len == 1) fld.value = aux; 
    if (len == 2){ 
        if (aux>31) 
            [COLOR="red"]window.alert("El dia debe ser inferior a 31"); [/COLOR] //despues de este mensaje me gustaria que  borre los datos del campo
        else 
            fld.value = aux; 
    } 
    if (len > 2 && len < 5) { 
     if (len == 4){ 
        if (aux.substr(len - 2, len)>12) 
            [COLOR="Red"]window.alert("El mes debe ser inferior a 12"); [/COLOR] //despues de este mensaje me gustaria que  borre los datos del campo
			
        else 
            fld.value = aux; 
    } 
     aux2 = ''; 
     for (j = 0, i = len - 3; i >= 0; i--) { 
      if (j == 2) { 
       aux2 += milSep; 
       j = 0; 
      } 
      aux2 += aux.charAt(i); 
      j++; 
     } 
     fld.value = ''; 
     len2 = aux2.length; 
     for (i = len2 - 1; i >= 0; i--) 
      fld.value += aux2.charAt(i); 
     fld.value += decSep + aux.substr(len - 2, len); 
    } 
    if (len > 4 && len < 9) { 
     aux2 = ''; 
     for (j = 0, i = len - 3; i >= 0; i--) { 
      if (j == 2 && i <= len -5) { 
       aux2 += milSep; 
       j = 0; 
      } 
      aux2 += aux.charAt(i); 
      j++; 
     } 
     fld.value = ''; 
     len2 = aux2.length; 
     for (i = len2 - 1; i >= 0; i--) 
      fld.value += aux2.charAt(i); 
     fld.value += aux.substr(len - 2, len); 
    } 
[COLOR="red"]	if (len ==8){
	var pagina="abm_cheque.asp?fechaok="+fld.value;
	document.location=pagina;
	}[/COLOR]// en ese if redirecciono con el valor de la fecha ok. Quisiera validar si la fecha es mayor a hoy, de ser asi, alerta y no se ejecuta la redireccion

 return false;

}

muchas gracias de antemano por su ayuda
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:24.