【问题标题】:Showing the next month显示下个月
【发布时间】:2010-05-25 15:53:00
【问题描述】:

我想知道如何设置下个月只显示星期一活动:

我试图这样做,但它不会工作

function onlyMondaysNextMonth(date){
    var day = date.getDay();  
    var mDate = date.getMonth() + 1;

    return {
        minDate: mDate, 
    }     
    return [(day == 1),''];                                                        
}

谢谢。

【问题讨论】:

    标签: javascript jquery datepicker


    【解决方案1】:

    使用以下代码仅启用从下个月开始的星期一

    var minDate = null;
    var now = new Date();
    if (now.getMonth() == 11) {
        minDate = new Date(now.getFullYear() + 1, 0, 1);
    } else {
        minDate = new Date(now.getFullYear(), now.getMonth() + 1, 1);
    }
    
    /* create datepicker */
    jQuery(document).ready(function () {
        jQuery('#datepicker').datepicker({
            minDate: minDate,        
            constrainInput: true,
            beforeShowDay: beforeShowDay
        });
    });
    
    function beforeShowDay(date) {
        var day = date.getDay();
        if (day == 1)
            return [true]
        return [false];
    
    }
    

    工作示例托管在http://elangovanr.com/samples/jquery/datepickermonday.html 供您参考。

    【讨论】:

    • 试过你的代码,但似乎没有设置下个月出现。当日历显示时,它只是将天数限制为星期一,但我们仍然在同一个月份,而不是下一个月份。我们就不能那样做吗: beforeShowDay: function(date){ $(this).datepicker('option', 'minDate', '+1m'); var day = date.getDay(); if (day == 1) 返回 [true] 返回 [false]; } 虽然它返回了太多的递归......
    • 更新了我的代码。而不是使用getYear 使用getFullYear
    • beforeShowDay可以简化为function beforeShowDay(date) { return [date.getDay() == 1]; }
    • Elan,它现在看起来很棒!您认为是否有可能检测到是否没有剩余的活动星期一?你懂我的意思吗?我喜欢我们在月底,我们上周一过去了,所以周一不会有任何活动。有没有办法检测到呢?并传递到下个月。
    • 我没有得到你的问题,你能举例解释一下吗?
    猜你喜欢
    • 1970-01-01
    • 2018-01-16
    • 1970-01-01
    • 1970-01-01
    • 2020-06-05
    • 1970-01-01
    • 1970-01-01
    • 2011-09-08
    • 1970-01-01
    相关资源
    最近更新 更多