问题描述
我要制作2个日期选择器,其中当我在第1个日期选择器中输入某个日期(但输入的日期不能小于今天的日期)时,则在另一个日期选择器中,一个人不能输入该日期之前的日期(输入日期选择器)。
我编写了以下代码,但在此代码中,月份,年份没有变化,但是日子却变化很大。有人可以告诉我错误或提供更好的解决方法。
<!--HTML code-->
From Date:-
<input type="text" name="" class="form-control" autocomplete="off" id="from" placeholder="Select Date">
<br>
<br>
To Date:-
<input type="text" name="" class="form-control" autocomplete="off" id="to" placeholder="Select Date">
java脚本
$("#from").datepicker({
dateFormat: "dd-mm-yy",minDate: 'tooday',maxDate: '3M',changeMonth: true,changeYear: true,onSelect: function (date) {
var selectedDate = $('#from').datepicker('getDate').getDate();
var minDate = new Date();
// set min date
minDate.setDate(selectedDate + 1);
var maxDate = new Date();
// set max date
maxDate.setDate(selectedDate + 100);
$('#to').datepicker('setDate',minDate );
//sets minDate to from date + 1
$('#to').datepicker('option','minDate',minDate );
//sets maxDate to from date + 10
$('#to').datepicker('option','maxDate',maxDate );
}
});
$("#to").datepicker({
dateFormat: "dd-mm-yy",autoclose: true,}).on('changeDate',function (selected) {
var maxDate = new Date(selected.date.valueOf());
var someDate = new Date(selected.date.valueOf());
var numberOfDaysToAdd = 100;
someDate.setDate(someDate.getDate() - numberOfDaysToAdd);
var dd = someDate.getDate();
var mm = someDate.getMonth() + 1;
var y = someDate.getFullYear();
var someFormattedDate = dd + '/'+ mm + '/'+ y;
$('#from_date').datepicker('setStartDate',someFormattedDate);
$('#from_date').datepicker('setEndDate',maxDate);
});
var tooday = document.querySelector('#today');
var date = new Date();
// Set the date
tooday.value = date.getFullYear().toString() + '-' + (date.getMonth() + 1).toString().padStart(2,0) +
'-' + date.getDate().toString().padStart(2,0);
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)