为什么javascript,jquery和css文件在MVC 4中没有正常工作?

时间:2014-11-11 16:10:38

标签: javascript jquery css asp.net-mvc-4 visual-studio-2012

我试图使用bootsrap和mvc4创建一个网站但不幸的是不仅仅是bootstrap文件,但我在布局文件中包含的任何js文件或css文件都无法正常运行。我不知道发生了什么事可以告诉我该怎么办?

我创建了一个包

bundles.Add(new ScriptBundle("~/bundles/new").Include("~/Content/bootstrap.js"));
bundles.Add(new StyleBundle("~/Content/css1").Include("~/Content/bootstrap.css"));

我将它们添加到布局中

@Scripts.Render("~/bundles/new")
@Styles.Render("~/Content/css1")

我试图添加导航栏和旋转木马无法正常工作

1 个答案:

答案 0 :(得分:2)

没有什么可以继续下去的,所以这里有一些使用bundle的技巧:

捆绑名称:

确保捆绑包名称与项目中的实际文件夹或文件不匹配,因为IIS将优先返回实际的文件夹/文件。

为了避免这种情况,我使用这些捆绑名称(因为我没有样式或捆绑文件夹/文件):

@Styles.Render("~/styles/MainLayout")
@Scripts.Render("~/bundles/MainLayout")

文件展示位置

通常,您的脚本文件位于项目中的scripts文件夹下,而不是content。内容通常用于图像和样式。

例如,确保您的文件位于项目的这些位置:

/Scripts/bootstrap.js

/Content/bootstrap.css

匹配的包(保留一点你的命名)看起来像:

bundles.Add(new ScriptBundle("~/bundles/new").Include("~/Scripts/bootstrap.js"));
bundles.Add(new StyleBundle("~/styles/css1").Include("~/Content/bootstrap.css"));

并使用:

进行渲染
@Scripts.Render("~/bundles/new")
@Styles.Render("~/styles/css1")

其他脚本?

脚本通常依赖于其他脚本,因此请确保在之前包含那些使用它们。

e.g。如果使用jQuery需要比大多数脚本更早进入:

@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/new")
@Styles.Render("~/styles/css1")

注意:现在,如果这些都无法帮助您,请提供整个布局文件,整个BundleConfig.cs,甚至是Visual Studio中项目浏览器窗口的屏幕截图。< / em>:)