【问题标题】:Add Day Before Cut Off Time To jquery.ui.datepicker将截止时间前一天添加到 jquery.ui.datepicker
【发布时间】:2015-01-25 07:22:22
【问题描述】:

我有什么

在 jquery.ui.datepicker 中,我已将值 minDate 更改为 +1,因此无法选择今天的日期或任何历史日期。 到目前为止一切都很好......但是......

我想要什么

我想阻止任何人在今天晚上 8 点之后选择明天的日期,因此,明天晚上 8 点之后的日期将不再可供选择。 我在 datePicker 网站上的默认值或任何示例中都看不到执行此操作的选项。

我可以实现这一目标的最佳或最简单的方法是什么?

提前感谢您的好建议

【问题讨论】:

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


    【解决方案1】:

    因为,jQuery DatePicker 还没有提供支持时间的功能(我猜)我们需要手动完成。

    你可以使用jQuery DatePicker的beforeShowoptions;每次单击 DatePicker 输入字段 时,都会在 datePicker UI 显示上调用它。

    所以,在beforeShow 内部,您可以计算当前时间并根据需要操作 minDate ,

    beforeShow : function(){
            var dateTime = new Date();
            var hour = dateTime.getHours();
            //If Hour is greater or equals to 8PM
            if(hour  >= 20){
                //Disable all past days including tomorrow and today
                $(this).datepicker( "option", "minDate", "+2" );
            }
        }
    

    这里是working demo

    附言

    1. 我还没有尝试过,但你应该看看这个 DateTimePicker 插件 如果您想要更微妙的方法

    【讨论】:

    • 嗨,Runcorn,非常感谢,它运行良好:-)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多