Michael N.: Datumsformat prüfen

Beitrag lesen

Hallo Evelmaennchen,

Ich möchte überprüfen, ob das Datum im richtigen Format eingegeben wird; das möchte ich mittels Java-Script machen

Sehr gut, dass Du sowas auch ueberpruefen willst, man muss dem User immer auf die Finger gucken ;-).

mit

»»  function chkFormular()

if(document.Formular.Datum.value == "???")
    
wie muss ich nun den Value definieren, wenn ich nur folgendes Format akzeptieren will:
dd.mm.yyyy?

So geht's leider nicht, aber keine Angst, Dir kann geholfen werden. Ich hab da aus meinem Fundus mal eine Funktion rausgezogen.

function CheckDate(ChkDate)
{
   var Year=parseInt(ChkDate.substring(6,10), 10);
   var Month=parseInt(ChkDate.substring(3,5), 10);
   var Day=parseInt(ChkDate.substring(0,2), 10);

if ((ChkDate.charAt(2)==".") && (ChkDate.charAt(5)=="."))
   {
       if ((Day<=31) && (Day>=1) && (Month>=1) && (Month<=12))
       {
         if((Month==1) (Month==3) (Month==5) (Month==7) (Month==8) (Month==10) (Month==12)) { return true; }
         else
         {
            if ((Day<=30) && (Day>=1))
            {
                if((Month==4) (Month==6) (Month==9) (Month==11)) { return true; }
               else
               {
                  if ((Day<=28) && (Day>=1)) { return true; }
                  else
                  {
                      if(Day==29)
                      {
                           if ((Year%4)==0)
                           {
                               if ((Year%100)!=0) { return true; }
                               else
                               {
                                     if ((Year%400)==0) { return true; }
                                     else { return false; }
                               }
                           }
                          else { return false; }
                      }
                      else { return false; }
                  }
            }
         }
        else { return false; }
       }
    }
    else { return false; }
  }
  else { return false; }
}

Diese Funktion gibt einem geultigen Datum true und bei einem ungeultigen Datum false zurueck.

Bis danndann

Michael N.