将截止时间前一天添加到 jquery.ui.datepicker
Add Day Before Cut Off Time To jquery.ui.datepicker
我有什么
在 jquery.ui.datepicker 中,我已将值 minDate 更改为 +1,因此无法选择今天的日期或任何历史日期。
到目前为止一切都很好.....但是.....
我想要的
我想阻止任何人在今天晚上 8 点之后选择明天的日期,因此,明天晚上 8 点之后的日期应该不再可供选择。
我在默认值或 datePicker 网站上的任何示例中都看不到执行此操作的选项。
实现此目标的最佳或最简单方法是什么?
提前感谢您的建议
因为 jQuery DatePicker 还没有提供支持时间的功能(我猜)我们需要手动完成此操作。
您可以使用 beforeShow
options 的 jQuery DatePicker;每次单击 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.
P.S
- 我还没有试过,但你应该看看这个
DateTimePicker 插件
如果你想要一个更微妙的方法
我有什么
在 jquery.ui.datepicker 中,我已将值 minDate 更改为 +1,因此无法选择今天的日期或任何历史日期。 到目前为止一切都很好.....但是.....
我想要的
我想阻止任何人在今天晚上 8 点之后选择明天的日期,因此,明天晚上 8 点之后的日期应该不再可供选择。 我在默认值或 datePicker 网站上的任何示例中都看不到执行此操作的选项。
实现此目标的最佳或最简单方法是什么?
提前感谢您的建议
因为 jQuery DatePicker 还没有提供支持时间的功能(我猜)我们需要手动完成此操作。
您可以使用 beforeShow
options 的 jQuery DatePicker;每次单击 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.
P.S
- 我还没有试过,但你应该看看这个 DateTimePicker 插件 如果你想要一个更微妙的方法