43

これは私の部分的なビューにあるコードです

@model Contoso.MvcApplication.Models.Exercises.AbsoluteArithmetic

@using(Html.BeginForm())
{
<div>
    <span style="width: 110px; float:left; text-align:center; font-size:2.5em;">@Model.Number1</span>
    <span style="width: 110px; float:left; text-align:center; font-size:2.5em;">+</span>
    <span style="width: 110px; float:left; text-align:center; font-size:2.5em;">@Model.Number2</span>
    <span style="width: 110px; float:left; text-align:center; font-size:2.5em;">=</span>
    <span>
            @Html.EditorFor(model => model.Result)
            @Html.ValidationMessageFor(model => model.Result)
    </span>
</div>
}

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

私のコードの一番下にあることに注意してください@section。そこにブレークポイントを設定すると実行されないことに気付きました。その行を _Layout.cshtml に移動すると、うまく機能しますが、それは考えではありません。

そのライブラリを追加したい部分的なかみそりビューで MVC4 にどのように伝えることができますか?

4

9 に答える 9

8

パーシャルからレイアウト セクションをレンダリングすることはできません。セクション定義を親ページまたはレイアウトに移動します。

于 2013-01-01T21:49:54.393 に答える
5

私の回答How to render a Section in a Partial View を確認してください。これにより、任意のビュー/部分ビューでスクリプトとスタイルを定義できます。また、重複したインクルードも処理します。

私の個人的な見解では、セクションはスタイルと javascript のインクルードには適していません。

于 2013-01-01T22:05:52.943 に答える
3

これは私にとってはうまくいき、読みやすくするために同じファイルに部分ビュー用の JavaScript と HTML を併置することができました

「 _MyPartialView.cshtml」という部分ビューを使用するビューで

<div>
    @Html.Partial("_MyPartialView",< model for partial view>,
            new ViewDataDictionary { { "Region", "HTMLSection" } } })
</div>

@section scripts{

    @Html.Partial("_MyPartialView",<model for partial view>, 
                  new ViewDataDictionary { { "Region", "ScriptSection" } })

 }

部分ビュー ファイル内

@model SomeType

@{
    var region = ViewData["Region"] as string;
}

@if (region == "HTMLSection")
{


}

@if (region == "ScriptSection")
{
        <script type="text/javascript">
    </script">
}
于 2017-01-12T13:03:50.523 に答える