Abfrage bei einem String klappt nicht so

dg87

Erfahrenes Mitglied
Guten Morgen,

ich habe ein Feld in dem man ein Datum eingeben muss. Andernfalls kommt eine Fehlermeldung.
Bei folgender Funktion überprüfe ich ob das enthaltene Zeichen eine Zahl oder ein punkt ist, wenn es eins von beiden nicht enthält, dann soll false rauskommen.
Wenn ich jetzt z.b. 12.01.07 eingebe, meckert er aber bereits das erste zeichen an, dass es weder ne zahl oder ein punkt ist.

Was hab ich falsch gemacht? Will nur kucken ob dieses input type value ein Datum ist oder nicht, sonst soll es nicht weitergehen.

Hier der code

Code:
function isNumberDate(str)  // Funktion die überprüft ob eine Zahl und ein . dabei ist wegen Datum
{
   alert("datumsfunktion");
  for(var position=0; position<str.length; position++)
  {
        
        var pruef = str.charAt(position);
        if  ( (pruef < "0") || (pruef > "9") || (pruef != ".")) // Ist die Zahl nicht zwischen 0-9
        {
              
              alert("Keine Zahl oder Punkt enthalten");
              return false;// .. dann ist es keine Zahl
              
        }
              
  };   
  return true;
  
}

Danke für die Hilfe :rolleyes:
 
Hi,

wenn es darum geht, zu prüfen, ob sich ein Datum im Feld befindet, ist es vielleicht angebracht, einen regulären Ausdruck zu verwenden.
Code:
function isNumberDate(str) {
  alert("datumsfunktion");

  // Suchmuster für einen Datumsstring der Form tt.mm.jj oder tt.mm.jjjj
  var strPattern = /^\d{1,2}\.\d{1,2}\.(\d{2}|\d{4})$/;
  if(!str.match(strPattern)){
    alert("Kein gültiges Datumsformat (tt.mm.jj oder tt.mm.jjjj)");
    return false;
  }
  return true;
}
Es wird geprüft, ob das übergebenen Datum in der Formaten tt.mm.jj oder tt.mm.jjjj vorliegt. Im Erfolgsfall wird true zurück gegeben, sonst false.

Ciao
Quaese
 

Neue Beiträge

Zurück