如何将jQuery ui datepicker日历的结束日期设置为用户的开始日期?

时间:2018-12-01 02:40:03

标签: javascript jquery jquery-ui-datepicker

我是Java的新手,请提供一些有关我的jQuery datepicker代码的帮助。我花了很长时间在这里寻找并尝试修复我的代码,但似乎无法使其正常工作...我希望用户选择开始日期,然后单击结束日期,他们可以请仅从开始日期开始选择日期。我还需要计算天数(但是我已经完成了此工作及其工作)。

此处提供了脚本代码:

function showDays() {
    var start = $('#startDate').datepicker('getDate');
    var end = $('#endDate').datepicker('getDate');

    if (!start || !end) return;
    var days = (end - start) / 1000 / 60 / 60 / 24;
    $('#noDays').val(days);
    if (days > 15) {
    alert ( "The maximum amount of nights is 15. Please select dates within this range." )
    $( '#endDate' ).focus();
  }
    document.getElementById("p__myTrip--days").innerHTML =  days;
  }
$("#startDate").datepicker({
    dateFormat: 'dd-mm-yy',
    minDate: 0,
    changeMonth: true,
    onSelect: showDays,
     onClose: function( selectedDate ) {
         var dParts = selectedDate.split('-');
         var in30Days = new Date(dParts[2] + '/' +
                        dParts[1] + '/' +
                        (+dParts[0] + 30)
               );     
    $("#endDate").datepicker("option", "minDate");
    }
});
$("#endDate").datepicker({
    minDate: 1,
    changeMonth: true,
    dateFormat: 'dd-mm-yy',
    setDate: '#startDate',
    onSelect: showDays
});

任何帮助将不胜感激!谢谢! :)

1 个答案:

答案 0 :(得分:0)

您可以尝试以下方法:

$("#endDate").datepicker({
    minDate: 1,
    changeMonth: true,
    dateFormat: 'dd-mm-yy',
    setDate: '#startDate',
    endDate: '#endDate',
    onSelect: showDays
});