如何从Bootstrap datepicker对象中获取当前使用的日期格式?
可以从bootstrap-datepicker对象中获取当前组件的日期格式,具体实现方式如下:
1. 低版本兼容获取方式
bootstrap-datepicker初始化完成后,所有配置参数都会挂载到绑定元素的data存储对象中,直接读取对应属性即可:
// 选中绑定了datepicker的DOM元素 const picker = $('#your-datepicker-id'); // 读取当前生效的日期格式 const dateFormat = picker.data('datepicker').o.format; // 部分稍新版本也可以用以下写法 const dateFormatAlt = picker.data('datepicker').options.format;
2. 高版本推荐写法(v1.9.0及以上)
官方提供了专门的配置读取方法,无需关心内部属性结构,兼容性和稳定性更好:
const dateFormat = $('#your-datepicker-id').datepicker('getOption', 'format');
多组件批量获取校验示例
针对你有多个不同配置datepicker的场景,可以直接遍历所有组件分别获取格式后绑定校验逻辑:
// 选中所有配置了datepicker的元素 $('.datepicker-class').each(function() { // 获取当前组件的日期格式 const currentFormat = $(this).datepicker('getOption', 'format'); // 这里根据不同格式写对应的校验逻辑即可 if (currentFormat === 'yyyy-mm-dd') { // 对应格式校验代码 } else if (currentFormat === 'mm/dd/yyyy') { // 对应格式校验代码 } })
说明:如果后续你通过
setOption方法动态修改了组件的日期格式,以上方法读取到的始终是最新生效的格式,不需要额外手动维护同步。
内容的提问来源于stack exchange,提问作者xrodas
相关产品推荐
相关产品推荐

