zoukankan      html  css  js  c++  java
  • [转]How to add a script in a partial view in MVC4?

    本文转自:https://stackoverflow.com/questions/14114084/how-to-add-a-script-in-a-partial-view-in-mvc4

    问题:

    This is the code which I have in my partial view

    @model Contoso.MvcApplication.Models.Exercises.AbsoluteArithmetic
    
    @using(Html.BeginForm())
    {
    <div>
        <span style=" 110px; float:left; text-align:center; font-size:2.5em;">@Model.Number1</span>
        <span style=" 110px; float:left; text-align:center; font-size:2.5em;">+</span>
        <span style=" 110px; float:left; text-align:center; font-size:2.5em;">@Model.Number2</span>
        <span style=" 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")
    }

    Please note at the bottom of my code, I've got a @section, and I realized that it's not running if I set a breakpoint there. If I move that line in the _Layout.cshtml it works well, but that's not the idea.

    How can I tell to MVC4 in a partial razor view that I want to add that library?

    参考答案:

    This worked for me allowing me to colocate JavaScript and HTML for partial view in same file for ease of readability

    In View which uses Partial View called "_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" } })
    
     }

    In Partial View file

    @model SomeType
    
    @{
        var region = ViewData["Region"] as string;
    }
    
    @if (region == "HTMLSection")
    {
    
    
    }
    
    @if (region == "ScriptSection")
    {
            <script type="text/javascript">
        </script">
    }




    另外关于 aspnetcore下的

    How to use ViewDataDictionary with Html.Partial in asp.net core?

    Another way to use this is to pass the ViewData of the current view into the constructor. That way the new ViewDataDictionary gets extended with the items you put in using the collection initializer.

    @Html.Partial("MyPartial", new ViewDataDictionary(ViewData) { { "BookId", Model.Id } })

  • 相关阅读:
    Linux rcp命令详解
    Linux patch命令详解
    Linux paste命令详解
    linux od命令详解
    linux mv命令详解
    Linux more命令详解
    Linux mktemp命令
    MySQL状态变量详解
    mysql性能分析show profile/show profiles
    MySQL执行计划
  • 原文地址:https://www.cnblogs.com/freeliver54/p/7268994.html
Copyright © 2011-2022 走看看