Bootstrap MVC 应用程序无法识别 Datetimepicker

Bootstrap Datetimepicker not recognized by MVC application

我正在尝试将 bootstrap datetimepicker 包含到我的 MVC 应用程序中,但我的项目似乎无法识别它。

我首先下载了 Bootstrap.v3.Datetimepicker.css nuget 包,其中下载了该实用程序所需的所有必要依赖项。

根据我的研究,运行 datetimepicker 需要以下内容:

安装后我在 BundleConfig.cs 文件中修改了以下内容:

首先包含 css 文件:

bundles.Add(new StyleBundle("~/Content/css").Include(
                        "~/Content/bootstrap.css",
                        "~/Content/datepicker.css",
                        "~/Content/bootstrap-datetimepicker.css",
                        ........
                        ));

然后添加了几个包以包含所需的 JS 文件:

bundles.Add(new ScriptBundle("~/bundles/bootstrap").Include(
                        "~/Scripts/bootstrap.js"));

bundles.Add(new ScriptBundle("~/bundles/datetimepicker").Include(
                        "~/Scripts/bootstrap-datetimepicker.js"));

bundles.Add(new ScriptBundle("~/bundles/moment").Include(
                        "~/Scripts/moment-with-locales.min.js",       
                        "~/Scripts/moment.min.js"));

bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
                        "~/Scripts/jquery-1.9.1.js"));

bundles.Add(new ScriptBundle("~/bundles/jqueryui").Include(
                        "~/Scripts/jquery-ui-1.8.24.js"));

我在 _Layout.cshtml 文件中包含了以下内容:

@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/moment")
@Scripts.Render("~/bundles/bootstrap")
@Scripts.Render("~/bundles/jqueryui")

最后,在我想实际调用日期时间选择器的地方,我有以下脚本:

    @section Scripts {
    @Scripts.Render("~/bundles/datetimepicker");
    <script>

        $('.input-group.date').datetimepicker();

    </script>
}

我以前从来没有遇到过这样的问题。我在我的应用程序的其他部分经常使用 bootstrap DATEPICKER 来执行完全相同的架构并且它工​​作得很好。

我的应用程序没有识别项目的添加项。在我看来,我的脚本块甚至可以识别智能感知中的旧日期选择器,但不能识别 datetimepicker。

这可能取决于顺序(尽管您没有提到您的包在布局文件中的位置)。

如果您的脚本部分在布局文件中的包之前呈现,则可能是日期选择器在您使用它时未能找到其依赖项。

例如,这可能会导致问题:

@RenderSection("Scripts", false)

@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/moment")
@Scripts.Render("~/bundles/bootstrap")
@Scripts.Render("~/bundles/jqueryui")

但这应该可行...

@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/moment")
@Scripts.Render("~/bundles/bootstrap")
@Scripts.Render("~/bundles/jqueryui")

@RenderSection("Scripts", false)