【发布时间】:2021-04-24 01:00:33
【问题描述】:
这里的第一个问题,所以要温柔:)
jquery 和日期选择器相当新,这个让我很困惑,所以希望有更多知识的人可以提供帮助。
基本上,我有 2 个日期选择器,人们可以在其中选择下一个 2 个付款日期,但如果有人从日期选择器 2 (#incomeNextDate2) 中选择 2 月 1 日或 3 月 1 日,那么第一个日期选择器中的日期 (#incomeNextDate1 ) 显示 01/01/2021 或 02/01/2021。我假设这是 datepicker 2 中的 onselect 函数的问题,但无法解决问题所在。日期选择器的 jquery 如下:
$("#incomeNextDate1").datepicker({
dateFormat: 'dd/mm/yy',
defaultDate: +4,
changeMonth: false,
minDate: 0,
maxDate: +40,
prevText: '<i class="fa fa-chevron-left"></i>',
nextText: '<i class="fa fa-chevron-right"></i>',
onSelect: function( selectedDate ) {
date1 = $('#incomeNextDate1').datepicker('getDate');
var date2 = $('#incomeNextDate1').datepicker('getDate');
date1.setDate(date1.getDate()+4);
date2.setDate(date2.getDate()+45);
$( "#incomeNextDate2" ).datepicker( "option", "maxDate", date2 );
$( "#incomeNextDate2" ).datepicker( "option", "minDate", date1 );
$('#incomeNextDate1').trigger('blur');
}
});
$("#incomeNextDate2").datepicker({
dateFormat: 'dd/mm/yy',
minDate: +4,
maxDate: +80,
changeMonth: false,
prevText: '<i class="fa fa-chevron-left"></i>',
nextText: '<i class="fa fa-chevron-right"></i>',
onSelect: function( selectedDate ) {
var days = Math.floor((new Date(selectedDate) - new Date()) / (1000*60*60*24));
$( "#incomeNextDate1" ).datepicker( "option", "maxDate", Math.min(days, 35) );
$('#incomeNextDate2').trigger('blur');
}
});
我应该补充一点,日期是 01/01/2021 或 02/01/2021 应该是不可能的,因为它不应该是今天之前的日期,一旦发生,日期选择器就会变得无法使用,因为我不能不再选择其他日期或更改月份。
【问题讨论】:
-
请将您的评论作为编辑。
-
抱歉,已排序
标签: jquery datepicker