MVC应用程序

时间:2016-01-28 22:22:26

标签: jquery css twitter-bootstrap asp.net-mvc-4 datetimepicker

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

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

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

  • 自举
  • 时刻与 - 语言环境
  • 自举-的DateTimePicker
  • 自举-的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")

最后,在我看来,我想要实际调用datetimepicker,我有以下脚本:

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

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

    </script>
}

我过去从未遇到过这样的问题。我在我的应用程序的其他部分中使用引导程序 DATEPICKER 执行完全相同的体系结构,它运行正常。

我的应用程序无法识别项目的添加内容。我的视图中的脚本块甚至可以识别intellisense中的旧日期选择器,但不识别datetimepicker。

1 个答案:

答案 0 :(得分:1)

这可能取决于订购(尽管您没有提到您的捆绑包放置在布局文件中的位置)。

如果您的Scripts部分在布局文件中的包之前呈现,则日期选择器可能无法在您使用它时找到它的依赖关系。

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

@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)