_layout(MVC)中的脚本

时间:2014-04-15 19:57:46

标签: jquery asp.net-mvc layout

当我只有一个视图时,所有脚本都运行良好。当我试图将其拆分为布局和局部视图时 - 脚本不再有效。请回答问题:

1)应该放置链接?在视图中还是在_layout中?如果在布局中,我应该使用

@Scripts.Render()

或只是

<script src="~/Scripts/jquery-1.7.1.js"></script>

2)应该放置脚本?在视图中还是在_layout中?在头部或体内?

或者我可以这样做:在

视图中放置脚本
@section Scripts{ } 

然后在布局中使用

@RenderSection("Scripts", false)

...

对不起愚蠢的问题:)

2 个答案:

答案 0 :(得分:1)

您可以在_layout.cshtml中执行以下操作

@ Scripts.Render(&#34;〜/ bundles / bundlename&#34;)

其中,在调用RegisterBundles时,bundlename是捆绑包的名称。或者,您可以执行以下操作:

@RenderSection(&#34;脚本&#34;,必需:false)

此外,为了表现,请将js包放在页面底部。

答案 1 :(得分:0)

我认为这取决于脚本的使用方式。 JQuery,我放在布局页面上,因为我可能会在所有页面上使用它。如果某个函数特定于视图或部分,那么我可能会为该视图或部分创建单独的脚本文件。

我也更喜欢使用@ Scripts.Render,因为它会对我进行缩小,只是确保你没有引用.min文件,因为它忽略了它们。这样,您可以在调试时获得可以阅读的javascript文件,并让系统在您的生产环境中为您缩小它们。