【问题标题】:Jquery UI calendar control disable specific dates [duplicate]Jquery UI日历控件禁用特定日期[重复]
【发布时间】:2015-02-22 13:36:50
【问题描述】:

我想禁用每个月的第一个星期六 + 我想禁用所有星期日 我试过下面的代码只会禁用每个星期日。如何禁用每个月的第一个星期六? 以下是我尝试过的代码: $(函数 () {

        $("#txtDate").datepicker({
            beforeShowDay: noSunday
        });
        function noSunday(date) {
            var day = date.getDay();
            return [(day > 0), ''];
        };
    });

【问题讨论】:

    标签: javascript jquery asp.net jquery-ui jquery-ui-datepicker


    【解决方案1】:

    如您的问题中所述,您在禁用星期日方面做得非常好。 因为(day > 0) 将启用除星期日之外的日期。现在,为了添加您可以使用的每月第一个星期一的限制,

    var day = date.getDay();
    day.getDate(); //Returns the numbering of date. e.g Jan 1 will return 1 , Jan 2 will return 2 and so on.
    

    因此,如果您想检查第一个星期一,您需要这样做,

    !(day==6 && date.getDate() <= 7)
    //Day==6 denotes Saturday
    

    所以,完整的代码如下所示,

    function disableDate(date) {
          var day = date.getDay();
          return [ (day!=0 && !(day==6 && date.getDate() <= 7)), ''];
     }
    

    查看演示 here

    【讨论】:

    • 我希望所有星期六都被禁用,而不是 .MONDAYS。另外我想在第一个星期六显示,星期六剩下的时间应该被禁用。
    • 那么,问题似乎只是重新构造了上面的等式以获得所需的结果。
    • 是的,我误解了问题并禁用了星期一。但这与您上面的评论冲突:How can I disable first saturday of every month ??
    猜你喜欢
    • 1970-01-01
    • 2012-04-02
    • 2010-10-15
    • 1970-01-01
    • 1970-01-01
    • 2011-02-27
    • 2011-05-21
    • 2017-05-25
    • 2018-09-04
    相关资源
    最近更新 更多