【发布时间】:2019-06-02 07:27:13
【问题描述】:
我正在寻找一个带有 2 个日期选择器的表单。第一个选择的数据,必须是第二个的minDate,第二个的maxDate必须是minDate+10天。
例如:
- 选择的第一个日期:01/01/2019
- 在第二个字段中,我最多可以选择 01/10/2019 作为日期
这是我刚刚完成的小代码:
$(document).ready(function () {
$("#from").datepicker({
dateFormat: "dd-mm-yy",
minDate: 0,
onSelect: function (date) {
var date2 = $('#from').datepicker('getDate');
date2.setDate(date2.getDate() + 10);
$('#to').datepicker('setDate', date2);
//sets minDate to from date + 1
$('#to').datepicker('option', 'minDate', date2);
}
});
$('#to').datepicker({
dateFormat: "dd-mm-yy",
onClose: function () {
var from = $('#from').datepicker('getDate');
console.log(from);
var to = $('#to').datepicker('getDate');
if (to <= from) {
var minDate = $('#to').datepicker('option', 'maxDate');
$('#to').datepicker('setDate', minDate);
}
}
});
});
【问题讨论】:
-
抱歉我忘记了
-
您到底在为什么而苦苦挣扎?
-
正如我所说,我希望他们之间有一个依赖关系。但是我的代码不是我想要的依赖
-
确保您的日期格式不匹配。您的
dateFormat属性设置为dd-M-yy但您在解释中的示例日期似乎是mm/dd/yyyy -
我建议您不要为 from 字段设置最大日期,因为我遇到了类似的问题,并且会产生一些问题。假设您从 2019/01/07 中选择,而不是 to min 将是 2019/01/08;现在,如果您选择喜欢 2019/01/10,则从 2019/01/10 也将达到最大值。现在会有一个问题,因为您不能再设置 2019/01/10 之后的日期。
标签: javascript jquery jquery-ui datepicker