【发布时间】:2020-07-30 02:28:53
【问题描述】:
我在 MVC 页面中有一个 foreach 循环。如下所示。但是,当我使用提交按钮提交表单时,它总是提交第一条记录。无法理解为什么会这样。感谢您的帮助。
@model IEnumerable<DeployModel>
@using (Html.BeginForm("Index", "Dep", FormMethod.Post))
{
<div class="col-md-11">
<!-- Modal content-->
<div class="modal-content">
<div class="modal-body" id="modal-body" style="overflow-y: auto">
@if (Model != null && Model.Any())
{
<div>
<table class="table table-condensed table-hover table-bordered">
<thead>
<th>
S1 Name
</th>
<th>
S2 Name
</th>
<th>
Old Version
</th>
<th>
New Version
</th>
<th>
Status
</th>
</thead>
<tbody>
@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(o => item.S1)
</td>
<td>
@Html.DisplayFor(o => item.S2)
</td>
<td>
@Html.DisplayFor(o => item.OldVersion)
</td>
<td>
@Html.DisplayFor(o => item.NewVersion)
</td>
<td>
@Html.DisplayFor(o => item.Status)
</td>
<td>
<button name="SubmitButton" class="btn action-btn" type="submit" > Submit </button>
</td>
</tr>
}
</tbody>
</table>
</div>
}
</div>
</div>
</div>
</div>
}
我的控制器动作看起来像,但无论按钮点击如何,它总是接收第一条记录。
[HttpPost]
public ActionResult Index(DeployModel deployModel)
{
//TODO code
}
知道如何解决这个问题吗?
【问题讨论】:
-
你必须给他们一个不同的
name才能工作 -
我必须在哪里提供不同的名称?能否请您详细说明一下?
标签: c# asp.net-mvc model-view-controller controller