我想使用jquery-ui datepicker进行日期范围选择。 #dteStart的第一次更改成功将#DteEnd设置为minDate。
但是如果我发出警报,#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);
});
});
TIA,
REV
答案 0 :(得分:26)
将$("#dteEnd").datepicker("destroy");
放在$("#dteEnd").datepicker(DateOptions);
之前,它会正常工作。
答案 1 :(得分:18)
如果您只想更改已配置的选项,还可以执行以下操作:
$("#dteEnd").datepicker("option", DateOptions);
或
$("#dteEnd").datepicker("option", { dateFormat: "mm/dd/yyyy" });
答案 2 :(得分:2)
在这种情况下,以下jQuery辅助函数可能非常有用,可以保留原始选项:
$.fn.customizeDatepicker = function(newOptions) {
var prevOptions = $(this).datepicker('option', 'all');
$(this).datepicker('destroy').datepicker($.extend(prevOptions, newOptions));
return this;
};
它会保存以前的选项并使用新选项扩展它们。