So, da bin ich wieder. ^^
Ich setz es jetzt doch mit dem return um, hab es wie folgt gestrickt:
function berechne()
{
// Kontrolliert, ob es das eingegebene Datum gibt und gibt das genaue Alter zurück
cal_Alter = checkGebDat();
if (cal_Alter == false)
{
// wenn das Alter nicht stimmt mache nichts
}
else
{
// ansonsten führe alle andere Funktion aus
}
}
Hab aber nun ne neue Frage:
Wenn ich die Funktion so lasse, wird die Fehlermeldung aus checkGebDat() 1x gezeigt (so wie es seien soll). Setze ich aber direkt den Funktionsnamen in den Code, so:
function berechne()
{
// Kontrolliert, ob es das eingegebene Datum gibt und gibt das genaue Alter zurück
cal_Alter = checkGebDat();
if (checkGebDat() == false)
{
// wenn das Alter nicht stimmt mache nichts
}
else
{
// ansonsten führe alle andere Funktion aus
}
}
gibt er mir die Fehlermeldung 2x aus. Warum? Funktion checkGebDat():
function checkGebDat()
{
// Geburtsdatum
var t,m,j,GebDatum;
t=document.getElementById("inputTag").value;
m=document.getElementById("inputMonat").value;
j=document.getElementById("inputJahr").value;
// aktuelles Datum
var heute = new Date();
var heuteTag = heute.getDate();
var heuteMonat = heute.getMonth() + 1;
var heuteJahr = heute.getFullYear();
// Überprüft, ob das Geburtsdatum gültig ist
GebDatum = new Date(j,m-1,t);
if(GebDatum.getDate()==t && GebDatum.getMonth()+1==m && GebDatum.getFullYear()==j)
{
}
else
{
alert("Bitte geben Sie ein gültiges Geburtsdatum ein.");
alert("Return falsch");
return false;
}
}
Eine Anmerkung noch: die Variable cal_Alter ist global.
Grüsse,
Bailey