Dieses Schnipsel setzt ein HTML-Formular mit der ID "age-form" und drei Eingaben (Text oder Auswahl) mit den IDs "day", "month" und "year" voraus.
$("#age-form").submit(function(){
var day = $("#day").val();
var month = $("#month").val();
var year = $("#year").val();
var age = 18;
var mydate = new Date();
mydate.setFullYear(year, month-1, day);
var currdate = new Date();
currdate.setFullYear(currdate.getFullYear() - age);
if ((currdate - mydate) < 0){
alert("Sorry, only persons over the age of " + age + " may enter this site");
return false;
}
return true;
});
Möglicherweise möchten Sie etwas Eleganteres als eine Benachrichtigung tun und sollten das Formular wahrscheinlich auch mit serverseitigem Code validieren, da dieser Schutz sonst nur für Benutzer mit aktiviertem JavaScript funktioniert.
Guter Beitrag!
Hier ist die PHP-Seite
Validatoren – 2 – Altersprüfung @ alternateIllusion
Das ist nett, aber ich sehe keinen Sinn in der Altersprüfung. Wer gibt unter dem eingeschränkten Alter sein korrektes Alter an?
Wegen der rechtlichen Seite der Dinge. Mit der Altersprüfung können sie nicht von jemandem verklagt werden, da die Person, die auf die Website zugegriffen hat, erklärt hat, dass sie alt genug ist und gegen die Nutzungsbedingungen verstoßen hat.
Der Punkt ist, zum Beispiel, das Gesetz im Land...
Vielen Dank für diesen Code, er ist sehr hilfreich.
Ich habe damit gearbeitet und es scheint, dass Ihr Alter nur mit einer Genauigkeit bis zum Geburtsjahr ermittelt wird. Wenn ich also dieses Jahr 18 Jahre alt werde, aber immer noch erst 17 bin, würde es mich immer noch durchlassen.
Gibt es eine Möglichkeit, genauer zu sein, um auch nach Tag und Monat zu validieren?
Danke
Das wird wahrscheinlich für Ihre Anforderungen funktionieren.
mydate.setFullYear(year, month-1, day); warum -1 für Monat?