zoukankan      html  css  js  c++  java
  • 强类型视图中提交表单,把View中的Model数据传递给Control

    若要实现强类型视图中提交表单,把View中的Model数据传递给Control,那么必须要确保一件事——表单中的input标签元素的name属性的值必须与model中的属性名相同,不区分大小写。

    示例代码如下:

    view视图代码

    @model MVCCase.Models.EditModels
    
    <h2>Edit</h2>
    
    <form action="/home/edit" method="post">
    
        <fieldset>
            <legend>EditModels</legend>
    
            <div class="editor-label">
                姓名
            </div>
            <div class="editor-field">
                <input type="text" name="name" />
            </div>
    
            <div class="editor-label">
                性别
            </div>
            <div class="editor-field">
                <input type="text" name="gender" />
            </div>
    
            <div class="editor-label">
                年龄
            </div>
            <div class="editor-field">
                <input type="text" name="age" />
            </div>
    
            <p>
                <input type="submit" value="Save" />
            </p>
        </fieldset>
    </form>
    

    :这里表单提交使用了post方式,以get方式也是没有问题的。


    控制器代码

    public class HomeController : Controller
        {
            public ActionResult Index()
            {
                ViewBag.Message = "Modify this template to jump-start your ASP.NET MVC application.";
    
                return View();
            }
    
            public ActionResult Edit(EditModels model)
            {
                Response.Write(model.Name + " " + model.Age + " " + model.Gender);
    
                return View();
            }
    }
    
    :这里只是验证数据有没有传到后端。


    model代码

    public class EditModels
        {
            public string Name { get; set; }
    
            public string Gender { get; set; }
    
            public string Age { get; set; }
        }

    另,B/S应用程序,如客户端使用:ExtJs和JqueryUI等 ,可以使用FormCollection接收客户端数据,代码如下

    view中代码

    @{
        Layout = null;
    }
    <!DOCTYPE html>
    <html>
    <head>
        <title>用户编辑</title>
    </head>
    <body>
        @using (@Html.BeginForm())
        {
            <div>
                用户名:@Html.TextBox("UserName", null, new { @style = "200px" })
            </div>
            <div>
                密码:@Html.Password("Password")
            </div>
            <div>
                <input type="submit" value="提交" /></div>
        }
    </body>
    </html>

    控制器中代码

    //UserEdit
            public ActionResult UserEdit_01()
            {
                return View();
            }
    
            [HttpPost]//UserEdit
            public ActionResult UserEdit_01(FormCollection form)
            {
                Response.Write(form["UserName"]);
                Response.Write("<br />");
                Response.Write(form[1]);
                Response.Write("<br />");
                return View();
            }


  • 相关阅读:
    json的eval的小问题
    关于insertBefore
    关于touch-action
    关于 please verify the preference field with the prompt:Tomcat JDK name 问题解决
    总结一下,以软件开发生命周期来说明不同的测试的使用情况
    用户需求、己、竞争对手的关系
    苹果电脑快捷键大全
    软件工程与计算机科学的区别
    有人认为,“中文编程”是解决中国程序员编程效率的秘密武器,请问它是一个“银弹”么?
    Maven 和IDEA的初始配置
  • 原文地址:https://www.cnblogs.com/wangzl1163/p/6341142.html
Copyright © 2011-2022 走看看