ASP.NET MVC 使用视图中的值填充 DropDownList
Posted
技术标签:
【中文标题】ASP.NET MVC 使用视图中的值填充 DropDownList【英文标题】:ASP.NET MVC Populating a DropDownList with a value from the view 【发布时间】:2010-05-02 07:19:17 【问题描述】:在我的控制器中,我有这个:
ViewData["maskList"] = new SelectList(equipmentRepository.GetMasks(), "Id", "DisplayName");
然后我将它绑定到我的视图使用
<div each="var nfa in mfa.NasalFittingAssessment">
$html.DropDownList("NasalMaskTypeId", ViewData["maskList"] as IEnumerable<System.Web.Mvc.SelectListItem>, new class = "ddl" )
</div>
请注意,我使用的是 spark 视图引擎,因此此 DropDownList 将通过循环呈现到页面。这意味着下拉列表的选定值将在循环的每次迭代中发生变化。
我无法解决的是如何根据当前呈现到屏幕的值传入我想要设置 DropDownList 的值。
【问题讨论】:
【参考方案1】:所以在玩了一会儿后,我解决了:
您想要做的只是在控制器中分配通用集合,如下所示:
ViewData["maskList"] = equipmentRepository.GetMasks();
然后像这样从视图中动态构建选择列表:
<div each="var nfa in mfa.NasalFittingAssessment">
$Html.DropDownList("NasalFittingAssessment.NasalMaskType.Id", new SelectList(ViewData["maskList"] as IList<Equipment>, "Id", "DisplayName", nfa.NasalMaskType.Id), new class = "ddl" )
</div>
【讨论】:
以上是关于ASP.NET MVC 使用视图中的值填充 DropDownList的主要内容,如果未能解决你的问题,请参考以下文章
如何根据 asp.net mvc4 中的模型列表填充 ListBox?
在 ASP.NET MVC 3 中,Jquery 令牌输入未填充数据库中的值
ASP.NET MVC 视图需要将选定的下拉列表和日历日期传递给模型