Bootstrap Datepicker年份显示异常:如何隐藏2022年仅显示2023-2024?
解决Bootstrap Datepicker显示超出范围年份的问题
问题根源
- 混用了jQuery UI Datepicker的
minDate参数与Bootstrap Datepicker的startDate参数,Bootstrap Datepicker并不识别minDate,导致日期范围规则冲突失效。 - 存在拼写错误:
calenderWeeks应为calendarWeeks,可能引发控件异常。 - 相对日期计算可能因当前时间产生偏差,不如绝对日期精确可靠。
修正后的代码
$('#tanggalTrx').datepicker({ clearBtn: false, format: 'yyyy-mm', autoclose: true, minViewMode: 1, maxViewMode: 1, // 锁定在月份视图,禁止切换到年份视图查看更多年份 changeYear: true, calendarWeeks: true, // 修正拼写错误 startDate: '2023-07', // 精确指定允许选择的起始月份 endDate: '2024-06', // 精确指定允许选择的结束月份 toggleActive: true });
关键说明
- 移除无效的
minDate参数,统一使用Bootstrap Datepicker原生的startDate和endDate控制可选日期范围,控件会自动禁用超出范围的日期及导航箭头。 - 添加
maxViewMode:1强制控件停留在月份选择视图,避免用户切换到年份视图后看到2022年。 - 如果偏好使用相对日期,可将
startDate设为'-11m'、endDate设为'0d'(前提是当前时间为2024年6月),但仍需移除minDate参数。
内容的提问来源于stack exchange,提问作者SeorangWibu2021
相关产品推荐
相关产品推荐

