ищу DatePicker с временем, списком выбора месяца и возможностью смены месяца после вы
Привет.
Ищу хороший DatePicker с указанными функциям. Немного расшифрую, что от него нужно: 1) Возможность выбора времени (чч:мм) 2) возможность выбора месяца и года в виде списка 3) после выбора числа чтобы не происходило окончательного выбора даты, а можно было ещё сменить месяц Две первые функции есть в ui-datepicker. ![]() Однако после щелчка по числу окно календарика закрывается и дата считается выбранной. Мне же нужна возможность после выбора числа ещё выбрать месяц. 1 и 3 функции нашёл в неком Protoplasm datepicker: ![]() А вот чтобы всё и сразу - никак не могу найти. Подскажите, пж, в сторону какого календарика смотреть. |
Попробуйте поиграть с событиями того же дейтпикера, может и хватит.
|
Вложений: 1
Таки запилил решение на событиях ui-datepicker.
Если кому понадобится, вот код:
$(<селектор>).datepicker({ showButtonPanel: true, closeText: 'Выбрать',
onSelect: function (dateText, dp) {
$(this).datepicker('setDate', dateText);
dp.show();
},
onChangeMonthYear: function (year, month, dp) {
dp.currentMonth = month;
dp.currentYear = year;
var maxDay = 31;
if (dp.currentDay > 28) {
if (month == 2 && (year % 4 == 0 && year % 100 != 0 || year % 400 == 0))
maxDay = 29;
else {
var daysInMonth = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
maxDay = daysInMonth[month - 1];
}
if (dp.currentDay > maxDay)
dp.currentDay = maxDay.toString();
}
var dateStr = "";
dateStr += dp.currentDay < 10 ? "0" + dp.currentDay : dp.currentDay;
dateStr += ".";
dateStr += month < 10 ? "0" + month : month;
dateStr += "." + year;
$(this).datepicker('setDate', dateStr);
$(this).val(dateStr);
}
});
![]() |
Таки обнаружилась проблема.
На dp.show(); страница прокручивается на самый верх. Если поле, к которому прикручен календарь, находится где-нибудь внизу, то после выбора дня страница скроллится на самый верх. upd: проблема решилась, был косяк jquery-ui. |
| Часовой пояс GMT +3, время: 06:02. |