获得30+下拉值控制器更新模型- MVC3 c#



我有一个非常大的表单,表示一个月或更长时间的数据。每天有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];
}

最新更新