You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Bootstrap 4.6 + Laravel 8应用中正常显示datetimepicker组件

问题修复方案

现有组件适配Bootstrap4.6的修复方法

你遇到的图标缺失问题根源是当前使用的bootstrap-datetimepicker 4.17.47是为Bootstrap3开发的,默认依赖Bootstrap3内置的Glyphicon图标库,而Bootstrap4及以上版本已经移除了Glyphicon,所以才会出现图标不显示的问题,不需要引入Bootstrap3的CSS,直接修改组件初始化配置即可解决:

方案:初始化时指定Font Awesome图标

从你的代码可以看到已经引入了Font Awesome图标库,只需要在datetimepicker初始化时加入图标映射配置即可:

$(document).ready(function () {
    $('#dob').datetimepicker({
        // 替换默认Glyphicon为Font Awesome图标
        icons: {
            time: 'far fa-clock',
            date: 'far fa-calendar',
            up: 'fas fa-chevron-up',
            down: 'fas fa-chevron-down',
            previous: 'fas fa-chevron-left',
            next: 'fas fa-chevron-right',
            today: 'fas fa-calendar-check',
            clear: 'fas fa-trash',
            close: 'fas fa-times'
        }
    });
});

另外你的HTML代码里还存在Bootstrap4不兼容的类名,可以同步修改避免样式异常:Bootstrap4已经移除了input-group-addon,替换为input-group-append即可:

<div class="form-group">
    <label for="user_id">
        User <span class="text-danger">*</span>
    </label>
    <div class="input-group" id="dob">
        <input type="text" class="form-control" placeholder="Date Of Birth">
        <div class="input-group-append">
            <span class="input-group-text"><i class="far fa-calendar-alt"></i></span>
        </div>
    </div>
</div>

适配Bootstrap4.6 + jQuery 3.4的datetimepicker推荐

如果需要更原生的Bootstrap4适配,可以替换为以下更适配当前技术栈的组件:

  • Tempus Dominus:是原bootstrap-datetimepicker作者针对Bootstrap4/5重写的官方迭代版本,API和旧版高度兼容,迁移成本极低,原生支持Bootstrap4样式和自定义图标配置,不需要额外做兼容性调整。
  • flatpickr:轻量级无依赖的日期时间选择器,体积仅几十KB,不依赖Bootstrap JS也可以正常运行,支持自定义主题,可完美适配Bootstrap4样式,是目前很多Laravel项目的首选日期组件。
  • eonasdan-bootstrap-datetimepicker的BS4分支:社区维护的适配Bootstrap4的分支版本,和你当前使用的组件API完全一致,只需要替换引入的CSS和JS文件即可。

内容的提问来源于stack exchange,提问作者mstdmstd

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 04:15:04