"ASP.NET MVC从视图传参到控制器的几种形式" 在ASP.NET MVC中,从视图传参到控制器是非常常见的操作场景。下面将介绍从视图传参到控制器的几种形式。 1. 传递数组 在视图中,可以使用JavaScript的ajax方法将数组传递到控制器中。例如: ```javascript $(function () { var value = ["C#", "JAVA", "PHP"]; $("input[type='button']").click(function () { $.ajax({ url: "/Home/List", type: "Get", data: { valuelist: value }, traditional: true, //必须设置该属性,否则控制器中获取不到值 success: function (data) { alert("Success"); } }); }); }); ``` 在控制器中,可以使用List\<string>类型的参数来接收数组参数: ```csharp public ActionResult List(List<string> valuelist) { return View(); } ``` 2. 传递单个Model 在视图中,可以使用Html.BeginForm方法来传递单个Model对象到控制器中。例如: ```csharp @using (Html.BeginForm()) { <div class="form-group"> @Html.LabelFor(model => model.Name, new { @class = "control-label col-md-2" }) <div class="col-md-10"> @Html.EditorFor(model => model.Name) @Html.ValidationMessageFor(model => model.Name) </div> </div> <div class="form-group"> @Html.LabelFor(model => model.Price, new { @class = "control-label col-md-2" }) <div class="col-md-10"> @Html.EditorFor(model => model.Price) @Html.ValidationMessageFor(model => model.Price) </div> </div> <div class="form-group"> @Html.LabelFor(model => model.Color, new { @class = "control-label col-md-2" }) <div class="col-md-10"> @Html.EditorFor(model => model.Color) @Html.ValidationMessageFor(model => model.Color) </div> </div> <div class="form-group"> <div class="col-md-offset-2 col-md-10"> <input type="submit" value="提交" class="btn btn-default" /> </div> </div> } ``` 在控制器中,可以使用Products类型的参数来接收Model对象: ```csharp public class Products { public int Id { get; set; } [DisplayName("产品名称")] [Required(ErrorMessage = "此项不能为空")] public string Name { get; set; } [DisplayName("产品价格")] [Required(ErrorMessage = "此项不能为空")] public string Price { get; set; } [DisplayName("产品颜色")] public string Color { get; set; } } public ActionResult List(Products model) { return View(); } ``` 通过上述两种方法,可以轻松地从视图传参到控制器中,从而实现复杂的业务逻辑处理。
剩余7页未读,继续阅读
- 粉丝: 0
- 资源: 1万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 测控 23-7 谢恩堂 先行者报名.xlsx
- wbw-pop-up-window
- 基于Django+Python3.7+mysql设计的在线教育系统
- 2024.9.18 作业
- 1685670459856数据和代码.zip
- 基于Java+SpringBoot2.0+Mysql+mybatisPlus+Redis+RabbitMq设计的高并发秒杀系统
- 基于Django设计实现的blog.zip
- 西门子1200plc轴运动控制程序,此程序是之前给海康威视做的一台装路由器壳子的机器,程序包括有调用轴控制块做的控制3个伺服,1
- 基于Spring Boo+Mybatis+Redis+RabbitMQ设计的高并发电商秒杀系统
- 三菱Q系列PLC ,QD77MS16走总线控制伺服项目,实际应用的 程序结构清晰明了,通俗易懂,8个伺服,PLC程序有完整的注释