javascript - 在 Litepicker 中禁用过去的日子
问题描述
我正在使用 Litepicker:https ://litepicker.com/ 如何禁用日历中的过去几天?例如,如果今天是 7 号,我需要禁用点击,并且颜色必须是过去几天(6 号、5 号、...)的灰色。
解决方案
Litepicker 文档:
禁用选择天数。可以包含具有范围的数组:例如:[ ['2019-01-01', '2019-01-10'], '2019-01-31' ]。可以包含日期对象或 Unix 时间戳(以毫秒为单位)或字符串(必须等于选项 lockDaysFormat)。默认值:“YYYY-MM-DD”选项 lockDays 的日期格式。
使用 moment.js 获取今天的日期,减去一天,然后使用过去的日期设置方式。如果使用一个,你可以使用你的'setMin'日期,否则这仍然有效。
例如...
let format = 'YYYY-MM-DD'; //<-- Change this to the date format your using for your project, otherwise this doesn't matter keep it the same.
let today = moment(); //Gets today's date in a moment object
today.subtract(1,'days').format(format); //Subtract a day, then format to whatever your 'lockDaysFormat' string is.
const disallowedDates = [['2001-01-01', today]]//Make a 2D array with those those variables.
//Put in your litepicker settings..
new Litepicker({
element: document.getElementById('datepicker'),
singleMode: false,
lockDaysFormat:format, //<-- Format used above with moment
lockDays:disallowedDates, //<-- Disable dates
})
推荐阅读
- python - 如何使循环从索引 150 开始并从列表中打印 20 个值?
- javascript - 如何将一组数字分类到均匀分布的桶中?
- ios - 裁剪 CIImage 会导致图像过宽 1px
- java - 从 1 个数组列表中删除对象并添加到另一个
- javascript - 使用任意字符串查询表
- asp.net-mvc - 了解加载 ChildAction 的过程
- mysql - 在 for 循环 MySQL Node.js 内切换数据库,它的切换速度不够快/它们重叠?
- arrays - Swift:可以发现数组中元素的类型并用于指定泛型类型参数吗?
- mysql - MYSQL查询中的重复列值
- swift - 无法将新的 mac 版本上传到应用商店