• 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>    
    } 
    ...
  • 相关阅读:
    PIL 和 pythonopencv 从内存字节码中读取图片并转为np.array格式
    【转载】 什么是元类
    【转载】 Py之cupy:cupy的简介、安装、使用方法之详细攻略
    【转载】 vscode如何在最新版本中配置c/c++语言环境中的launch.json和tasks.json?
    【转载】 Ubuntu下使用VSCode的launch.json及tasks.json编写
    Javascript高级程序设计第二版第六章面向对象程序设计(ObjectOriented Programming)简称OOP编程笔记
    Javascript高级程序设计第二版第五章引用类型笔记
    css权重简单之谈
    编辑神器VIM下安装zencoding
    显示层3s后隐藏
  • 原文地址:https://www.cnblogs.com/shy1766IT/p/5346876.html
Copyright © 2020-2023  润新知