我有这段代码:
型号:
public bool[] ArrayOfBooleans = new bool[2];
查看
@using(Html.BeginForm())
{
@:#1
<input name="ArrayOfBooleans[0]" type="checkbox" value="true" />
<input name="ArrayOfBooleans[0]" type="checkbox" value="false" />
<br />
@:#2
<input name="ArrayOfBooleans[1]" type="checkbox" value="true" />
<input name="ArrayOfBooleans[1]" type="checkbox" value="false" />
<br />
<input type="submit" value="Submit"/>
}
当我发布此消息时, ArrayOfBooleans 中没有任何更改。甚至可以将“附加”复选框添加到数组元素中吗?
注意:这是我的一个真正问题的简化形式。我必须使用集合和更复杂的对象。
答案 0 :(得分:3)
试试这个(适合我):
@using(Html.BeginForm())
{
@:#1
<input name="ArrayOfBooleans[0]" type="checkbox" value="true" />
<input name="ArrayOfBooleans[0]" type="hidden" value="false" />
<br />
@:#2
<input name="ArrayOfBooleans[1]" type="checkbox" value="true" />
<input name="ArrayOfBooleans[1]" type="hidden" value="false" />
<br />
<input type="submit" value="Submit"/>
}
在模特中:
public class A
{
public bool[] ArrayOfBooleans { get; set; }
}
在控制器中:
[HttpPost]
public ActionResult Index(A model)
{
return View();
}