jQuery datepicker change with maxDate range

吃可爱长大的小学妹 提交于 2020-01-10 04:44:22

问题


I am creating one control for date range. which have below requirements.

  • Form and To should be till yesterday no future dates [able to achive]
  • Restrict maximum 3 months of different.

    $("#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);
        }
    });
    

Here is JSfiddle


回答1:


Here is the result:

$(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);
            }
        }
    });
});

Working jsfiddle: http://jsfiddle.net/382z6ev5/ (Sorry, I got a problem with your jsbin)



来源:https://stackoverflow.com/questions/25446566/jquery-datepicker-change-with-maxdate-range

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!