zoukankan      html  css  js  c++  java
  • Html.BeginForm 与Section、Partial View 和 Child Action

    该方法用于构建一个From表单的开始,他的构造方法为: 
    Html.BeginForm("ActionName","ControllerName",FormMethod.method) 

    例如:

     @using (Html.BeginForm("Index", "Home", FormMethod.Get, new { name = "nbform", id = "nbform" }))
    @using(@Html.BeginForm("ImportStu", "ProSchool", FormMethod.Post, new { enctype = "multipart/form-data" }))
         {
            <text>选择上传文件:(工作表名为“Sheet1”,“电脑号”在A1单元格。)</text>
            <input name="file" type="file" id="file" />
            <input type="submit" name="Upload" value="批量导入第一批电脑派位名册" />
        }

    让请求地址不带id

    @using (Html.BeginForm("AddDIYBillOfLading", "BillOfLading", new { id ="" }, FormMethod.Post, new { name = "myform", id = "myform" }))

    Section、Partial View 和 Child Action 参考:http://www.cnblogs.com/willick/p/3410855.html

    右击Index方法,添加视图,编辑该视图如下:

    @model string[] 
     
    @{ 
        ViewBag.Title = "Index"; 
    } 
     
    @section Header { 
        <div class="view"> 
            @foreach (string str in new [] {"Home", "List", "Edit"}) { 
                @Html.ActionLink(str, str, null, new { style = "margin: 5px" })   
            } 
        </div> 
    }
    
    <div class="view"> 
        This is a list of fruit names: 
        @foreach (string name in Model) { 
            <span><b>@name</b></span> 
        } 
    </div>
    
    @section Footer { 
        <div class="view"> 
            This is the footer 
        </div> 
    } 

    编辑 /Views/Shared/_Layout.cshtml 文件如下:

    <!DOCTYPE html> 
    <html> 
    <head> 
        <meta charset="utf-8" /> 
        <meta name="viewport" content="width=device-width" /> 
        <style type="text/css"> 
            div.layout { background-color: lightgray;} 
            div.view { border: thin solid black; margin: 10px 0;} 
        </style> 
        <title>@ViewBag.Title</title> 
    </head> 
    <body>
        @RenderSection("Header") 
     
        <div class="layout"> 
            This is part of the layout 
        </div> 
     
        @RenderBody() 
     
        <div class="layout"> 
            This is part of the layout 
        </div>
    
        @RenderSection("Footer")
    <div class="layout"> 
            This is part of the layout 
        </div> 
    </body> 
    </html> 

    section只能在当前View或它的Layout中被调用。@RenderSection方法没有找到参数指定的section会抛异常,如果不确定section是否存在,则需要指定第二个参数的值为false,如下:

    ... 
    @RenderSection("scripts", false) 
    ... 

    我们还可以通过 IsSectionDefined 方法来判断一个section是否被定义或在当前View中是否能调用得到,如:

    ... 
    @if (IsSectionDefined("Footer")) { 
        @RenderSection("Footer") 
    } else { 
        <h4>This is the default footer</h4>    
    } 
    ...
  • 相关阅读:
    面试官:讲讲redis的过期策略如何实现?
    Java并发-CopyOnWriteArrayList
    Java并发-CopyOnWriteArrayList
    idea万能快捷键,不可不知的17个实用技巧
    Java面试题必备知识之ThreadLocal
    Java面试题必备知识之ThreadLocal
    再谈源码阅读
    再谈源码阅读
    七月伊始 LeetCode算法总结
    ta和夏天一起来了
  • 原文地址:https://www.cnblogs.com/shy1766IT/p/5346876.html
Copyright © 2011-2022 走看看