【发布时间】:2015-12-10 09:04:55
【问题描述】:
在 ASP.NET MVC 中,我有一个动作,它接受用户关于行和列的输入,然后导航到根据用户输入生成所需行数和列数的动作,如下所示:-
观看次数:
<div class="container" style='width:@(240 * Model.Columns.Capacity)px;overflow-y:auto'>
<div class="row">
@using (Html.BeginForm())
{
<table style='width:100%' class='table table-condensed'>
<tbody>
@for (int k = 0; k < Model.Rows.Capacity; k++)
{
<tr>
@for (int i = 0; i < Model.Columns.Capacity; i++)
{
<td>
@Html.TextBox("name" + k + i, null, new { @class = "form-control" })
</td>
}
</tr>
}
</tbody>
</table>
<input type="submit" name="name" value="Submit" class="btn btn-primary" />
}
</div>
进入之后。
http://i.stack.imgur.com/lxhOM.png
在发布操作中,我有一个表单集合,以便使用表单集合在发布操作中获取填充数据。在发布操作中,我使用 foreach 循环获取每个输入字段的值。
[HttpPost]
public ActionResult Enter(FormCollection form)
{
for (int i = 0; i < form.Count; i++)
{
Debug.WriteLine(form[i]);
}
return View();
}
我只想知道如何在 post 操作中获取单个列的所有值并逐列获取它们,默认情况下它获取水平的值。
【问题讨论】:
-
你的行和列是动态的还是每次都是相同的结构?
-
生成后一样。
-
您是如何生成输入字段的名称的?你能展示一些生成的示例标记吗?
-
您应该使用带有
List<Column> Row的视图模型,其中 Column 包含string Value,这样您就可以生成一个强类型的视图并回传给您的模型 -
如果您在生成表格时使用二维数组作为视图模型,然后发布该视图模型,它将全部为您自动填充
标签: c# asp.net asp.net-mvc twitter-bootstrap