我想创建一个包含2列的表: - 第一列包含一个复选框,第二列包含文本框。 我想将选中的复选框与其文本框绑定,并在控制器中以mvc。
获取其值答案 0 :(得分:-1)
您应该在viewmodel中存储两个集合。例如:
public IEnumerable<bool> CheckBoxes { get; set; }
public IEnumerable<string> TextBoxes { get; set; }
public int RowsCount { get; set; }
如果要使用MVC绑定,则应正确命名表中的单元格。您可以通过以下方式创建视图:
<table>
@for(int i = 0; i < Model.RowsCount; i++)
{
<tr>
<td><input type="checkbox" id="CheckBoxes[" + i + "]" name="Checkboxes[" + i + "]"/></td>
<td><input type="text" id="TextBoxes[" + i + "]" name="CheckBoxes[" + i + "]"/></td>
</tr>
}
</table>
MVC绑定使用name属性,因此如果您不想拥有相同的ID和名称,则可以更改您的ID:)
接下来,在您的控制器中,只需使用您的模型作为参数创建post方法。提交表单后,viewmodel中的集合应正确绑定。