Динамически изменить опцию в JQuery UI DatePicker не удается
Я хочу сделать выбор диапазона дат с помощью jquery-ui datepicker. Первое изменение в #dteStart успешно устанавливает minDate в #dteEnd. Но #dteEnd не смог обновить свои параметры при следующем изменении, если я оповестилDateOptions.minDate
его значение изменилось в соответствии с dateMin.
Может быть, я что-то здесь скучаю...
$(document).ready(function ()
{
$("#dteStart").datepicker()
.change(function ()
{
dateStart = $(this).datepicker('getDate');
dateMin = new Date(dateStart.getTime());
dateMin.setDate(dateMin.getDate() + 1);
var DateOptions = {
dateformat: "mm/dd/yyyy",
minDate: dateMin
}
$("#dteEnd").datepicker(DateOptions);
});
});
ТИА,
REV
4 ответа
Положил $("#dteEnd").datepicker("destroy");
до $("#dteEnd").datepicker(DateOptions);
и это будет работать нормально.
Если вы просто хотите изменить уже настроенные параметры, вы также можете сделать:
$("#dteEnd").datepicker("option", DateOptions);
или же
$("#dteEnd").datepicker("option", { dateFormat: "mm/dd/yyyy" });
Следующая вспомогательная функция jQuery может быть полезна в таких случаях, чтобы сохранить исходные параметры:
$.fn.customizeDatepicker = function(newOptions) {
var prevOptions = $(this).datepicker('option', 'all');
$(this).datepicker('destroy').datepicker($.extend(prevOptions, newOptions));
return this;
};
Это сохраняет предыдущие параметры и расширяет их новыми параметрами.
$('#divbspDate'). данные ("DateTimePicker").destroy();
Вы можете попробовать это, для выбора даты и времени он работает.