根据datepicker上选择的日期禁用整周

时间:2014-09-30 18:20:57

标签: javascript jquery jquery-ui jquery-plugins datepicker

我使用jQuery UI创建了.datepicker(),我现在想这样做:

  1. 禁用所有周末和假日,
  2. 一旦用户选择一周中的某一天,就会停用整周。假设用户选择2014年9月23日星期二,那么datepicker应该禁用2014年9月22日星期一 - 2014年9月28日星期日。
  3. 我在考虑beforeShowDayonSelect功能,但我不知道如何将我的要求结合在一起。

    一些小代码可能有所帮助:

    $("#datepicker").datepicker({
        showOn: "button",
        buttonImage: "/painstorder/jquery-ui/images/calendar.gif",
        buttonImageOnly: true,
        minDate: "dateToday",
        maxDate: new Date(2016, 2, 6),     
        buttonText: "Select date",
        dateFormat: "DD, d MM, yy",
        beforeShowDay: $.datepicker.noWeekends
    });
    

1 个答案:

答案 0 :(得分:0)

这是一个有效的例子http://jsfiddle.net/L25d7Lzy/1/

$("#datepicker").datepicker({
    minDate: "dateToday",
    maxDate: new Date(2016, 2, 6),     
    buttonText: "Select date",
    dateFormat: "DD, d MM, yy",

    beforeShow: function () {
        if ($('#datepicker').val()) {
            var thedate = new Date($('#datepicker').val());
            var minDate = new Date(thedate.setDate(thedate.getDate() + 7));
            $('#datepicker').datepicker("option", "minDate", minDate);
        }
    },
    beforeShowDay: $.datepicker.noWeekends,
});

您可以根据需要进行修改:)