如果选择开始日期,则默认情况下显示的结束日期应大于开始日期。在我的代码中,如果我选择开始日期,则将结束日期设置为与开始日期相同。这是我的代码。预先感谢。
$("#StartDate").datepicker({
dateFormat: 'dd/mm/yy',
minDate: 0,
numberOfMonths: 1,
onSelect: function(selected) {
$("#EndDate").datepicker("option", "minDate", selected)
}
});
$("#EndDate").datepicker({
dateFormat: 'dd/mm/yy',
numberOfMonths: 1,
onSelect: function(selected) {
$("#StartDate").datepicker("option", "maxDate", selected)
}
});
});
预期结果:如果我选择开始日期,则默认情况下显示的结束日期应大于开始日期。
实际结果:如果我选择开始日期,则将结束日期设置为与开始日期相同。
答案 0 :(得分:-1)
这是解决方案。尝试一下 如果迄今为空,它将设置为下一个日期 如果从date>到date至今,则与从date到
相同
$('#StartDate').datepicker({
autoclose: true,
}).on('changeDate', function (e) {
var to =new Date($("#EndDate").find("input").val());
var from = e.date;
if (from == "" || from == null) { $('#EndDate').datepicker('setStartDate', from) }
else if ($("#EndDate").find("input").val() == "")
{
var nextdate = new Date(from);
var tomorrow = new Date();
tomorrow.setDate(nextdate.getDate() + 1);
$('#EndDate').datepicker('setDate', tomorrow)
}
else if (from < to) {
}
else if (!from < to) {
$('#EndDate').datepicker('setDate', e.date)
}
});
$('#EndDate').datepicker({
autoclose: true,
}).on('changeDate', function (e) {
var from = new Date($("#StartDate").find("input").val());
var to = e.date;
if (to < from)
{
$('#StartDate').datepicker('setDate', e.date)
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
尝试一下并回到我身边。谢谢