将最小日期设置为另一个日期选择器的输入

问题描述

我要制作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 (将#修改为@)