Nun, die obige Antwort richtig ist, aber es nicht die Form bestätigen, wird der Benutzer noch in der Lage sein, das Formular abzusenden,
Ich habe einige Nachforschungen gemacht, aber konnte Ny nicht finden, schließlich schrieb ich diese Funktion, die gut funktioniert und das Formular validiert, und lässt das Formular nicht einreichen, bis das richtige Datum eingegeben wird, hoffe es hilft!
Das einzige, was Sie tun müssen, ist diesen Code hinzuzufügen, und dann wird dies auf alle Felder mit der Klasse 'datePicker' angewendet.
$(".datePicker").datepicker({
dateFormat: 'd/mm/yy',
changeMonth: true,
changeYear: true,
firstDay: 1,
minDate: Date.parse("1900-01-01"),
maxDate: Date.parse("2100-01-01"),
yearRange: "c-90:c+150"
});
// validation in case user types the date out of valid range from keyboard : To fix the bug with out of range date time while saving in sql
$(function() {
$.validator.addMethod(
"date",
function (value, element) {
var minDate = Date.parse("1900-01-01");
var maxDate = Date.parse("2100-01-01");
var valueEntered = Date.parse(value);
if (valueEntered < minDate || valueEntered > maxDate) {
return false;
}
return !/Invalid|NaN/.test(new Date(minDate));
},
"Please enter a valid date!"
);
});