Datumsvergleich An- Abreise
Das Script vergleicht die Inhalte von 2 Eingabefeldern (Datum) und prüft auf logische Inhalte der beiden Datumseingaben in Bezug auf den Zeitraum der Hotelbuchung. Außerdem: Prüfung beider Eingaben auf gültiges Datumsformat.
|
|
Anreisedatum - Abreisedatum
Beispiel entfernt - Fehler im Script, bitte warten!
Info 29.01.2012 Vorhaben
In der funktionierenden Version werde ich die Javascript-interne Funktion "parse()" verwenden.
"parse()" ermittelt aus einer übergebenen Zeichenkette die Anzahl von Millisekunden, die seit dem 01.01.1970, 0:00:00 Uhr UTC verstrichen sind (der Zeitpunkt 01.01.1970, 0:00:00 Uhr ist der Start des Zählvorgangs für datum und Zeit bei JavaScript).
Zum Aufrufen dieser Methode muss kein neues Date-Objekt erzeugt werden!
Ich beziehe nun alle Berechnungen auf das 'Urdatum' in JavaScript (01.01.1970). Damit schließe ich alle Fehlberechnungen und Probleme aus, die sich bei einem Schaltjahr oder bei einem Monats- bzw. Jahreswechsel zwischen den beiden Eckdaten ergeben könnten.

Syntax:
var ZeitVerstrichen1 = Date.parse("1 Jul 2010 00:00:00 GMT");
var ZeitVerstrichen2 = Date.parse("22 Jul 2010 00:00:00 GMT");
Die errechneten Millisekunden für die beiden Datumswerte kann ich dann subtrahieren und mit der Differenz weiter arbeiten.
ZeitVerstrichen1 - ZeitVerstrichen2 = Differenz in ms
Aber zunächst muss ich die beiden Datumswerte dem Eingabeformular entnehmen und prüfen.
Eingabefelder
Zur Prüfung werden die 6 Werte den Textfeldern entnommen und an die Prüfungsroutine übergeben. Dabei bezieht sich die 'Adressierung' zur Entnahme auf die ID des jeweiligen Eingabefeldes. Logisch: Jedem Textfeld wurde eine ID zugeordnet.
document.getElementById(ID des Feldes).value =
Zur Prüfung wird nach folgenden Regeln untersucht:
- Ist das Eingabefeld leer?
- Besteht die Eingabe aus Ziffern?
- Liegt die Eingabe innerhalb der gültigen Min- und Max-Werte?
Natürlich sind die erwarteten Max-Werte (abhängig davon ob es Werte für Tage, Monate oder Jahre sind) unterschiedlich und auch der Max-Wert für den Februar eines Schaltjahres muss berücksichtigt werden.
Danach müssen die Datumswerte dann auf ihre Logik in Bezug auf den Zeitraum einer Hotelbuchung überprüft werden.
- Ist das Anreisedatum gleich dem aktuellen Datum? (kann entfernt werden)
- Ist Anreisedatum und Abreisedatum gleich?
- Liegt das Anreisedatum vor dem Abreisedatum?
|