JQuery datepicker添加1天到结束日期minDate

时间:2016-12-07 07:27:36

标签: javascript jquery date jquery-ui datepicker

我正在使用此JQuery datepicker代码来选择日期范围。

$(function() {
    var dateFormat = "mm/dd/yy",
        from = $("#from").datepicker({
            defaultDate: "+1w",
            changeMonth: true,
            numberOfMonths: 3
        }).on("change", function() {
            to.datepicker("option", "minDate", getDate(this));
        }),
        to = $("#to").datepicker({
            defaultDate: "+1w",
            changeMonth: true,
            numberOfMonths: 3
        }).on("change", function() {
            from.datepicker("option", "maxDate", getDate(this));
        });

    function getDate(element) {
        var date;
        try {
            date = $.datepicker.parseDate(dateFormat, element.value);
        } catch (error) {
            date = null;
        }
        return date;
    }
});

我需要在结束日期添加一天。例如,如果我在开始日期选择12/08/2016,我希望结束日期从12/09/2016开始。

我该怎么做?这是一个JSFiddle

1 个答案:

答案 0 :(得分:3)

您需要在来自 DatePicker的<{3}}事件中将min-date选项设置为 DatePicker

  

选择日期选择器时调用。该函数接收所选日期作为文本,并将datepicker实例作为参数接收。这指的是相关的输入字段。

注意:此处仅添加相关代码

$('#from').datepicker({
      onSelect: function(selectedDate) {
            $('#to').datepicker('option', 'minDate', new Date(selectedDate).addDays(1));
      }
});

//Method to add days to date
function addDays(date, days) {
  var dat = date;
  dat.setDate(dat.getDate() + days);
  return dat;
}

onSelect