【问题标题】:Jquery UI date picker with reservation dates (Date range)带有预订日期(日期范围)的 Jquery UI 日期选择器
【发布时间】:2023-03-16 10:24:01
【问题描述】:

我在 book_from 和 book_to 这两个字段中使用了 Jquery UI 日期选择器进行预订。

当我关注 book_from 时,只有小于 book_to 和大于或等于今天日期的日期必须显示在 book_from 的日期选择器中。

如果 book_from = null 且 book_to=2012-04-10

那么 book_from 日期选择器应该只大于今天的日期 (2012-03-18) 并且小于 2012-04-10 (book_to)(甚至不是 2012-04-10)

如果我专注于 book_to,那么在 book_to 的日期选择器中,只有大于今天日期 + 大于 book_from 日期的日期

如果 book_from = 2012-04-05

那么 book_to 日期选择器只显示大于今天的日期 (2012-03-18) 和大于 2012-04-05(甚至不是 2012-04-05)

如果有人知道怎么做,请帮助我..

【问题讨论】:

  • 你试过什么?这个问题之前已经以不同的形式回答过,您是否尝试过搜索依赖日期选择器?
  • 得到了解决方案.... :)

标签: jquery jquery-ui uidatepicker jquery-ui-datepicker


【解决方案1】:

在谷歌上搜索了几个小时后,我终于找到了解决方案,它是用于预订的日期范围日期选择器 :)。我不仅仅是用这个词来解释我的问题。这是解决方案

$('#book_from, #book_to').datepicker({
       minDate: 0,
       changeMonth: true,
       changeYear: true,
        beforeShow: customRange,
        dateFormat: "yy-mm-dd"
    });
function customRange(input) {

    if (input.id == 'book_to') {
        var minDate = new Date($('#book_from').val());
        minDate.setDate(minDate.getDate() + 1)

        return {
            minDate: minDate

        };
    }
    else  if(input.id == 'book_from') {
        var maxDate = new Date($('#book_to').val());
        maxDate.setDate(maxDate.getDate()-1)

        return {
            maxDate: maxDate

        };
    }

    return {}

}

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2011-04-19
  • 1970-01-01
  • 1970-01-01
  • 2012-05-05
  • 1970-01-01
  • 2015-11-11
  • 1970-01-01
相关资源
最近更新 更多