Mvc中把list从View传入Controller

public class User
    {
        public string Name { get; set; }
        public bool IsChecked { get;set;}
        public int Age { get; set; }
    }
 [HttpGet]
        public ActionResult Index()
        {
            var list = new List<User>()
            {
                new User() {Name = "hky", IsChecked = true, Age = 1},
                new User() {Name = "ds", IsChecked = true, Age = 1},
                new User() {Name = "dsdasd", IsChecked = true, Age = 1},
            };
            return View(list);
        }

 [HttpPost]
        public ActionResult Index(List<User> list)
        {
            return View();
        }
@model List<MvcApplication1.Controllers.User>
@{
    Layout = null;
}
<!DOCTYPE html>
<html>
<head>
    <title>Index</title>
</head>
<body>
   @using (Html.BeginForm())
   {
       for (int i = 0; i < Model.Count; i++)
       {
           @Html.TextBoxFor(x => Model[i].Name)
       }
       <input type="submit" name="name" value=" 提交 "/>
   }
</body>
</html>

通过谷歌查看源代码如下:

是通过索引的形式来命名name,如果不是这种形式传值将不成功,至少我实验的是这样的,这个点我实验的时候也一直很奇怪为何后台用foreach的方式却无法接收

 @using (Html.BeginForm())
   {
       foreach (var item in Model)
       {
            @Html.TextBoxFor(x => item.Name)
       }
       <input type="submit" name="name" value=" 提交 "/>
   }

生成的html代码如下:

我个人实验在后台始终无法接收到值

时间: 2024-12-25 07:12:19

Mvc中把list从View传入Controller的相关文章

在ASP.NET MVC中使用区域来方便管理controller和view

在ASP.NET MVC中使用区域来方便管理controller和view 在mvc架构中,一般在controllers和views中写所有控制器和视图, 太多控制器时候,为了方便管理,想要将关于person的所有控制器放在一个文件夹里面,这样就容易查看和管理. 这时候在WEB下面创建一个Areas文件夹.(和Controllsers文件夹同级) 然后在Areas里面右键选择新建区域. 会自动创建一个路由信息,和web.comfig还有controllers文件夹等. 这时候就可以很清晰的管理和

mvc如何使用JavaScript在view和controller之间传递数据

在一般的BS项目开发中,我们经常需要在前台和后台之间传递数据,mvc架构中,也需要在view和controller之间传递数据,那么我们应该如何实现呢? view想controller传递数据:view中代码 <li>@Html.ViewComponent().WfSaveLink(Model).Id("saveToLink").OnBeforeDo("externalData")</li> <scriptlanguage="

Spring MVC中,事务是否可以加在Controller层

一般而言,事务都是加在Service层的,但是爱钻牛角尖的我时常想:事务加在Controller层可不可以.我一直试图证明事务不止可以加在Service层,还可以加在Controller层,但是没有找到有力的论据来支持我这个想法,搞得我一度认为事务只能加在Service层,直到我读过spring官方文档并实践之后,我知道我的想法是对的. 在spring-framework-reference.pdf文档中有这样一段话: <tx:annotation-driven/> only looks fo

Spring MVC中jquery ajax传递view

springMVC项目中遇到要使用jqueryAjax向前台传递动态表格的需求,原来的做法是在js中接收数据然后拼接成表格再给jsp显示,后来在这个国外的网站上看到了如下的使用"模板"的设计,觉得很是合理,自己测试了一下,觉得比之前js中拼接好用很多,大大减少了js的压力.我就直接复制原作者的回答了(回答真的很详细了),记录一下,感觉自己又成长了. MyController.java @Controller public class MyController {     @Reques

bug Spring Mvc中Jsp页面获取不到Controller中的变量

今天遇到了一个奇怪的问题: jsp代码如下: <h1>数据对比${name}</h1> 在controller里面,有赋值: @RequestMapping(value = "/index.do") public String index(ModelMap modelMap) { modelMap.put("name", "test"); return "/compare/index"; } 但是死活不

Spring MVC基础知识整理?View与Controller数据交互

概述 Spring MVC是由View—Controller—Model组成,其中View和Controller的数据交互,成为了关注的核心点.MVC中,我们将View中的数据传递到Controller,可以采用POST或者Get,传递相应的参数.Controller通过绑定来,匹配前台传递的参数.后台Controller也可以将值传递到前台页面. View值传递Controller 绑定传值的常用方式有如下 @RequestParam,绑定单个请求数据,可以是URL中的数据,表单提交的数据或上

MVC初级知识之——View与Controller的讲解

Controller是MVC中比较重要的一部分.几乎所有的业务逻辑都是在这里进行处理的,并且从Model中取出数据.在ASP.NET MVC Preview5中,将原来的Controller类一分为二,分为了Controller类和ControllerBase类.Controller类继承自ControllerBase类,而ControllerBase实现是了IController接口. ControllerBase实现了IController接口的Execute方法,在Route匹配到Cont

ASP.NET Core MVC中Controller的Action如何直接使用Response.Body的Stream流输出数据

在ASP.NET Core MVC中,我们有时候需要在Controller的Action中直接输出数据到Response.Body这个Stream流中,例如如果我们要输出一个很大的文件到客户端浏览器让用户下载,那么在Controller的Action中用Response.Body这个Stream流,来逐步发送文件数据到客户端浏览器是最好的办法. 但是我今天在ASP.NET Core MVC的Controller的Action中使用Response.Body输出数据到客户端浏览器的时候遇到了个问题

浅谈MVC中的service层(转)

概述 mvc框架由model,view,controller组成,执行流程一般是:在controller访问model获取数据,通过view渲染页面. mvc模式是web开发中的基础模式,采用的是分层设计,各层之间职责分明.然而事与愿违,当我们日积月累的基于mvc模式开发之后,会逐渐的感受到层与层之间存在粘连和职责模棱两可的地方,这就是service层出现的重要原因. 问题是什么? 问题的本质是:业务逻辑粘连了C层和M层,应该从C层&M层解耦出来,成为独立的Service层. 在C层直接实现业务