timepicker.io跨午夜时段配置异常:22:00-05:00时段无法正常显示
解决timepicker.io跨午夜时段(22:00-05:00)的配置问题
针对你遇到的跨午夜时间槽显示异常问题,这里提供两种可靠的解决方案:
方案1:利用插件跨午夜时段识别(适用于新版插件)
timepicker.io(即jquery-timepicker)在新版本中支持直接通过minTime大于maxTime来定义跨午夜时段,同时可配置scrollDefault让下拉框默认定位到起始时间,提升体验:
$('#timepicker').timepicker({ timeFormat: 'HH:mm', interval: 30, minTime: '22:00', maxTime: '05:00', scrollDefault: '22:00' });
方案2:禁用不需要的时段(兼容所有版本)
如果新版跨午夜配置无效,可直接禁用05:00到22:00之间的所有小时,仅保留需求时段:
$('#timepicker').timepicker({ timeFormat: 'HH:mm', interval: 30, hoursDisabled: ['05', '06', '07', '08', '09', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21'] });
问题原因说明
- 第一次配置
minTime: '05:00', maxTime: '22:00'时,插件会生成05:00到22:00的时间槽,与你的需求完全相反。 - 第二次配置
minTime: '22:00', maxTime: '05:00'时,旧版本插件可能无法正确识别跨午夜逻辑,导致下拉框无数据显示。
内容的提问来源于stack exchange,提问作者ika
相关产品推荐
相关产品推荐

