Files
layui/docs/laydate/examples/limit.md
morning-star e1562bdb48 feat(laydate): 新增 disabledDate, disabledTime 选项 (#1569)
* feat(laydate): 新增 `disabledDate`, `disabledTime` 选项

feat(laydate): 优化年、月面板的禁用检测

refactor: 简化代码

fix: 修复 4d7ae6e 造成的按钮检测 BUG

options.disabledDate 中不应携带时分秒信息

fix(laydate): 修复范围联动模式, 右侧面板检测另外一个日期有效范围错误, 导致无法标记范围的问题

2.8.0 ~ 2.9.4 均有此问题

feat: disabledTime 返回值改为对象,简化写法

docs: 添加文档

feat: 优化点击确定按钮时的提示

fix: 修复一些边界情况

docs: typo

refactor: 优化年月禁用

refactor: 优化确定按钮 hint

chore: typo

docs: update

* refactor: 优化代码结构

* refactor: 优化 disabledTime,减少不必要的计算

* chore(laydate): 使用 prettier 格式化头部代码

* docs(laydate): 补充新选项文档描述

---------

Co-authored-by: 贤心 <3277200+sentsim@users.noreply.github.com>
2024-03-31 14:33:47 +08:00

2.8 KiB

限定可选日期
前后若干天可选
限定可选时间
这里以控制在 9:30-17:30 为例
禁用日期
禁用指定时间
<script> layui.use(function(){ var laydate = layui.laydate; // 限定可选日期 var ins22 = laydate.render({ elem: '#ID-laydate-limit-1', min: '2016-10-14', max: '2080-10-14', ready: function(){ ins22.hint('日期可选值设定在
2016-10-14 到 2080-10-14'); } }); // 前后若干天可选,这里以前后 7 天为例 laydate.render({ elem: '#ID-laydate-limit-2', min: -7, max: 7 }); // 限定可选时间 laydate.render({ elem: '#ID-laydate-limit-3', type: 'time', min: '09:30:00', max: '17:30:00', btns: ['clear', 'confirm'] }); // 禁用日期 laydate.render({ elem: '#ID-laydate-limit-4', disabledDate: function(date, type){ return date.getTime() > Date.now(); } }); // 禁用指定时间 laydate.render({ elem: '#ID-laydate-limit-5', type: 'time', range: true, disabledTime: function(date, type){ return { hours: function(){ return range(0, 10); }, minutes:function(hour){ return hour > 5 ? range(0, 20) : []; }, seconds:function(hour, minute){ return range(0, 2); } }; } }); function range(start, end) { var result = []; for (var i = start; i < end; i++) { result.push(i); } return result; } }); </script>