【问题标题】:jQuery datepicker change with maxDate rangejQuery datepicker 随 maxDate 范围变化
【发布时间】:2014-08-22 12:01:18
【问题描述】:

我正在为日期范围创建一个控件。有以下要求。

  • FormTo 应该是到昨天没有未来的日期 [able to achive]
  • 限制最多 3 个月的不同。

    $("#from-datepicker").datepicker({
        dateFormat: "dd-M-yy",
        maxDate: "-1d",
        onClose: function (selectedDate) {
          console.log(selectedDate);
            $("#to-datepicker").datepicker("option", "minDate", selectedDate);
          //$("#to-datepicker").datepicker("option", "maxDate", selectedDate);
        }
    });
    $("#to-datepicker").datepicker({
        dateFormat: "dd-M-yy",
        maxDate: "-1d",
        onClose: function (selectedDate) {
            $("#from-datepicker").datepicker("option", "maxDate", selectedDate);
        }
    });
    

这里是JSfiddle

【问题讨论】:

  • 你的方法很好:关闭 from-datepicker 时设置 to-datepickermaxDate (selectedDate + 3 Months),关闭 to-datepicker 时设置相同 (minDate) .注意不要超过昨天的限制也

标签: javascript jquery jquery-ui date datepicker


【解决方案1】:

结果如下:

$(function() {
    $("#from-datepicker").datepicker({
        dateFormat: "dd-M-yy",
        maxDate: "-1d",
        onClose: function (selectedDate) {             
            // Set 'TO' minDate
            $("#to-datepicker").datepicker("option", "minDate", selectedDate);             

            // Set 'TO' maxDate at 3 months if before yesterday
            var dt = new Date($(this).datepicker("getDate"));
            dt.setMonth(dt.getMonth() + 3);
            if(dt < Date.now()) {
                $("#to-datepicker").datepicker("option", "maxDate", dt);
            }
        }
    });
    $("#to-datepicker").datepicker({
        dateFormat: "dd-M-yy",
        maxDate: "-1d",
        onClose: function (selectedDate) {
            // Set 'FROM' maxDate
            $("#from-datepicker").datepicker("option", "maxDate", selectedDate);

            // Set 'FROM' minDate at 3 months if before yesterday
            var dt = new Date($(this).datepicker("getDate"));
            dt.setMonth(dt.getMonth() - 3);
            if(dt < Date.now()) {
                $("#from-datepicker").datepicker("option", "minDate", dt);
            }
        }
    });
});

工作 jsfiddle:http://jsfiddle.net/382z6ev5/ (对不起,我的 jsbin 有问题)

【讨论】:

  • 太棒了。但是我看不出小提琴的区别,你改变了什么?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-03
  • 1970-01-01
  • 2021-04-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多