Ver Mensaje Individual
  #3 (permalink)  
Antiguo 25/03/2011, 07:27
Avatar de Patriarka
Patriarka
 
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 3 meses
Puntos: 288
Respuesta: Validando una fecha

Hola amigo proba esto:
esto te muestra 3 campos para dia, mes y año.
se validan con un onchange().
si los tres campos estan bien ingresados te guarda en el campo hidden
una fecha valida para guardarla en la base de datos (date)

Código Javascript:
Ver original
  1. function regExpIntDate(BOX_name){
  2.     if(BOX_name=='dia'){
  3.         var bFound = /^\d+$/.test(document.form.dia.value);
  4.         if(document.form.dia.value>0 && document.form.dia.value<=31){
  5.             var ok=true;
  6.         }
  7.     }else if(BOX_name=='mes'){
  8.         var bFound = /^\d+$/.test(document.form.mes.value);
  9.         if(document.form.mes.value>0 && document.form.mes.value<=12){
  10.             var ok=true;
  11.         }
  12.     }
  13.     else if(BOX_name=='anio'){
  14.         var bFound = /^\d+$/.test(document.form.anio.value);
  15.         if(document.form.anio.value>=2000){
  16.             var ok=true;
  17.         }
  18.     }
  19.     if(bFound && ok){
  20.         document.form.HID_date_start.value=document.form.anio.value+'-'+document.form.mes.value+'-'+document.form.dia.value;
  21.         return true;
  22.         //alert('es int');
  23.     }else{
  24.         if(BOX_name=='dia'){
  25.             document.form.dia.value='';
  26.             alert ('Formato de dia: dd!');
  27.         }
  28.         else if(BOX_name=='mes'){
  29.             document.form.mes.value='';
  30.             alert ('Formato de Mes: mm!');
  31.         }      
  32.         else if(BOX_name=='anio'){
  33.             document.form.anio.value='';
  34.             alert ('Formato de Anio: aaaa!');
  35.         }
  36.         return false;
  37.     }
  38. }

Código HTML:
Ver original
  1. <form action="" name="form" method="post">
  2. <input type="hidden" name="HID_date_start" value="" />
  3. <div class="">* Fecha Inicio:</div>
  4.                     <div class="">
  5.                         Dia: <input onchange="return regExpIntDate('dia');" type="text" id="dia" name="dia" value="" size="2" maxlength="2" />
  6.                         Mes: <input onchange="return regExpIntDate('mes');" type="text" id="mes" name="mes" value=""  size="2" maxlength="2" />
  7.                         A&ntilde;o: <input onchange="return regExpIntDate('anio');" type="text" id="anio" name="anio" value=""  size="4" maxlength="4" />
  8.                     </div>
  9. </form>