【问题标题】:ASP.NET MVC4 - RenderAction with Javascript after contentASP.NET MVC4 - 内容后使用 Javascript 渲染动作
【发布时间】:2013-11-07 19:46:08
【问题描述】:

我最近将一个项目转移到 MVC4 并愉快地使用脚本包在内容末尾呈现脚本。

问题出现了,一些被渲染的动作(使用 Html.RenderAction)需要它们自己的脚本——在这个例子中,一些 jQuery 事件处理程序在文档准备好后设置。

除了移动 jQuery 包含使其更早之外,还有一种优雅的方法可以注册一些脚本(或文件),以便在捆绑后呈现。

例如

<body>
@{Html.RenderAction("myaction",pars..);}

@section scripts { 
    @Scripts.Render("~/bundles/myscriptbundlecontainingjquery")  
}

</body>

谢谢

【问题讨论】:

  • 我是否理解正确,您希望您的局部视图能够注册一些 javascript 文件?
  • 最后我使用了 Ronnie 的解决方案的派生词,在此处找到 stackoverflow.com/questions/12379266/…
  • 这意味着我可以从动作或部分渲染的内容中请求脚本包 - 您需要确保请求部分/渲染动作中所需的所有脚本包,因为您无法轻松控制顺序。因为列表是不同的,所以没有重复。见github.com/ronnieoverby/MvcAssetManager/blob/master/…

标签: jquery asp.net-mvc asp.net-mvc-4 razor


【解决方案1】:

您是否考虑过为该操作制作局部视图,并在那里渲染 jQuery?这样 jQuery 只会在你调用部分视图时呈现

【讨论】:

  • 这确实是它正在做的事情,但部分视图(html 从操作返回)使用尚未包含在页面中的 jquery。现在要做的显而易见的事情是首先呈现 jquery 脚本包,但我希望有一种注册脚本的方法,以便它可以在包之后(在页面内容之后)呈现
猜你喜欢
  • 1970-01-01
  • 2014-05-09
  • 2019-01-31
  • 1970-01-01
  • 2021-05-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多