Code
function test()
{
var eingabe_tag= (document.alter.Tag.value)
var eingabe_monat= (document.alter.Monat.value)
var eingabe_jahr= (document.alter.Jahr.value)
window.console.log("Eingabe:"+eingabe_tag+"."+eingabe_monat+"."+eingabe_jahr);
var eingabe_Datum = new Date(eingabe_tag, eingabe_monat, eingabe_jahr);
var aktuelles_Datum = new Date();
var aktueller_Tag = aktuelles_Datum.getDate();
// ab 0, nicht ab 1
var aktueller_Monat = aktuelles_Datum.getMonth()+1;
// er rechnet ab 1900
var aktuelles_Jahr = aktuelles_Datum.getYear()+1900;
window.console.log("Aktuell:"+aktueller_Tag+"."+aktueller_Monat+"."+aktuelles_Jahr);
if((aktuelles_Jahr - eingabe_jahr) < 18){
alert("Du bist noch nicht alt genug um diese Seite zu besuchen ! ") ;
return false;
}else if((aktuelles_Jahr - eingabe_jahr) > 18){
alert("alt genug");
return true; //open was weiß ich
}else if((aktuelles_Jahr - eingabe_jahr) == 18){
if(eingabe_monat > aktueller_Monat){
alert("Du bist noch nicht alt genug um diese Seite zu besuchen ! ") ;
return false;
}else if(eingabe_monat < aktueller_Monat){
alert("alt genug");
return true;
}else if(eingabe_monat == aktueller_Monat){
if(eingabe_tag <= aktueller_Tag){
alert("alt genug");
return true;
}
else{
alert("Du bist noch nicht alt genug um diese Seite zu besuchen ! ") ;
return false;
}
}
}
Alles anzeigen
Vor return true dein open(link) ersetzen oder so.
Alternativ den Rückgabe-Wert der funktion nehmen und in ne If packen. Dadurch muss man nicht 3-4 den alert niederschreiben oder das open.
Aber das sei dir nun überlassen.