Ich wollte beforeShow verwenden, um das Mindestdatum in einem Enddatum-Datumsauswahlfeld zu aktualisieren, um das Datum im Startdatum-Datumsauswahlfeld anzuzeigen. Ich habe eine Reihe von Lösungen hier und anderswo gepostet, die kompliziert waren revewed. Vielleicht übersehe ich etwas, aber der folgende, recht geradlinige Code funktioniert bei mir.
Dadurch wird der Fokus auf das Startdatum zurückgesetzt, falls noch keines festgelegt ist, und es wird versucht, ein Enddatum einzugeben. Wenn ein Startdatum festgelegt wurde, wird das Mindestdatum für das Enddatum entsprechend eingestellt.
$(function(){
$("#start_Date").datepicker({
changeMonth: true,
changeYear: true,
yearRange: "c-1:c+5",
dateFormat: "dd-mm-yy"
});
$("#end_Date").datepicker({
changeMonth: true,
changeYear: true,
yearRange: "c-1:c+5",
dateFormat: "dd-mm-yy",
beforeShow: end_Range
});
function end_Range(){
if ($("#start_Date").datepicker("getDate") == null ){
$("#start_Date").focus();
} else {
// set minimum date range
$("#end_Date").datepicker("option", "minDate", new Date ($("#start_Date").datepicker("getDate")));
};
};
});
Mit Datumsfeldern:
<label>Date</label><input class="datepicker" id="start_Date" type="text"/>
<label>Date</label><input class="datepicker" id="end_Date" type="text"/>