我有一个非常大的表单,表示一个月或更长时间的数据。每天有3下拉用户可以更新,然后我需要保存表单中的数据。我应该提一下,我必须做一个自定义下拉(这里)来使用样式类,所以它不是标准的Html.dropdown()
所以我想做的是…
视图:
@{
List<string> DropdownValues = new List<string>();
}
@using(Html.BeginForm("Method","Controller",FormMethod.Post,new{ Data = DropdownValues}))
{
@Html.CustomDropdown("Name1",ListOfOptions1)
@Html.CustomDropdown("Name2",ListOfOptions2)
@Html.CustomDropdown("Name3",ListOfOptions3)
<input type="submit" value="Submit" />
@{
//Do on submit
DropdownValues.add(Name1.value);
DropdownValues.add(Name2.value);
DropdownValues.add(Name3.value);
}
}
想法?
谢谢!
您可以直接从控制器代码访问表单元素,而不必将它们作为Action参数的一部分。也许这就是你要找的…
//In controller post action
string name1 = Request.Form["Name1"];
string name2 = Request.Form["Name2"];
//etc...
你甚至可以把它放在一个循环中,这取决于你对数据做什么…
for(int i = 1; i <= 30; i++)
{
string nameX = Request.Form["Name" + i];
}