如何修改Bootstrap datetimepicker返回格式为YYYY-MM-DDTHH:MM:SS
没问题!bootstrap-datetimepicker 依赖 moment.js,所以我们可以直接用 moment 的格式规则来配置它的输出格式,正好能满足你要的 YYYY-MM-DDTHH:MM:SS 格式需求。
修改方法
只需要在初始化 datetimepicker 时,添加 format 配置项,把值设为 YYYY-MM-DDTHH:mm:ss(注意:分钟是小写 mm,大写 MM 对应月份,别搞混了)。
修改后的 JavaScript 代码
$(function() { $('#datetimepicker1').datetimepicker({ format: 'YYYY-MM-DDTHH:mm:ss' // 指定后端要求的时间格式 }); });
额外说明
- 配置后,输入框会直接显示这个格式的时间,调用输入框的
val()方法就能拿到符合要求的字符串; - 如果需要在日期变化时主动获取格式化后的值,可以添加事件监听:
$(function() { $('#datetimepicker1').datetimepicker({ format: 'YYYY-MM-DDTHH:mm:ss' }).on('dp.change', function(e) { // 获取选中的格式化时间 const formattedTime = e.date.format('YYYY-MM-DDTHH:mm:ss'); console.log(formattedTime); // 示例输出:2024-05-20T16:45:30 }); });
完整可运行代码
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.15.1/moment.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.7.14/js/bootstrap-datetimepicker.min.js"></script> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.7.14/css/bootstrap-datetimepicker.min.css"> <div class="container"> <div class="row"> <div class='col-sm-6'> <div class="form-group"> <div class='input-group date' id='datetimepicker1'> <input type='text' class="form-control" /> <span class="input-group-addon"> <span class="glyphicon glyphicon-calendar"></span> </span> </div> </div> </div> </div> </div> <script> $(function() { $('#datetimepicker1').datetimepicker({ format: 'YYYY-MM-DDTHH:mm:ss' }); }); </script>
内容的提问来源于stack exchange,提问作者LiquidSnake
相关产品推荐
相关产品推荐

