jQuery UI 2 datepickers i wybór zakresu
Próbuję połączyć 2 datepickery, aby umożliwić użytkownikowi wybór zakresu dat.
Stworzyłem taki kod:
$(function() {
var dates = $("#fromDate, #toDate").datepicker({
dateFormat: 'yy-mm-dd',
changeMonth: true,
changeYear: true,
minDate: new Date(2010, 2 - 1, 2),
onSelect: function(selectedDate) {
var option = this.id == "fromDate" ? "minDate" : "maxDate",
instance = $(this).data("datepicker"),
date = $.datepicker.parseDate(
instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
dates.not(this).datepicker("option", option, date);
}
});
});
Działa to dobrze, ale dostaję dziwny błąd: kiedy wybieram datę za pomocą pierwszego wejścia przez sekundę, datepicker pokazuje datę z drugiego. Myślę, że funkcje onSelect ustawiają datę w oparciu o drugi datepicker.
Jeśli pierwszy datepicker ma datę w tym samym miesiącu co drugi, ten błąd nie jest wyświetlany.
Jak odtworzyć to zachowanie:
Wybierz „2010-02-05” w pierwszym datepicker (po kliknięciu daty dla drugiego miesiąca i roku pole zmiany na miesiąc i rok z drugiego datepicker)To jest mój jsFiddle:http://jsfiddle.net/Misiu/TyQSG/1/
Jak powinienem się zmienićonSelect
funkcja, aby usunąć ten błąd?