ClientDependency第二级无法解析

时间:2015-06-06 13:53:00

标签: javascript asp.net partial-views client-dependency

我有这样的设置:

Layout_Admin

<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Admin</title>

@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
@Scripts.Render("~/bundles/jquery")

@Html.RenderCssHere()
@Html.RenderJsHere()
</head>
<body> ... </body>

然后是在Category.cshtml

上加载的第一个部分页面
@using ClientDependency.Core.Mvc
@{
    ViewBag.Title = "Admin > Category";
    Layout = "~/Views/Admin/_Layout_Admin.cshtml";
    Html.RequiresJs("~/scripts/jsTree3/jstree.js");
    Html.RequiresJs("~/scripts/jsTree3/jstreegrid.js");
    Html.RequiresCss("~/content/jsTree/themes/default/style.css");
  }

这些脚本可以毫无问题地完美呈现。现在,Category.cshtml加载另一个名为_CreateCategory.cshtml的部分,该部分具有以下头部

@using ClientDependency.Core.Mvc
@model MyProject.Data.Models.Category

@{
    ViewBag.Title = "Create";
    Layout = null;
    Html.RequiresJs("~/scripts/plupload/plupload.dev.js");
    Html.RequiresJs("~/scripts/plupload/moxie.js");

}

最后一组客户端依赖项根本没有呈现。 _CreateCategory.cshtml通过在js中调用的控制器操作加载。

$("#btn_addCategory").on("click", function(e) {
                $("#categoryDetails").load("CreateCategoryView");

所以问题是如何获得在此部分渲染中定义的脚本。如果我在Category.cshtml中包含这些脚本,它们会被渲染,但_CreateCategory.cshtml仍会将它们显示为未定义。

我认为这是因为js在剃刀页面中调用控制器操作而不是@Html.Action。但这样做对我来说不是一个选择。

感谢任何帮助。

0 个答案:

没有答案