【问题标题】:DropDownListFor is not selecting existing valueDropDownListFor 未选择现有值
【发布时间】:2017-05-10 14:57:55
【问题描述】:

我有一个下拉列表

@Html.DropDownListFor(model => f.MovieID, (SelectList)ViewBag.MoviesList, "--Select One--", htmlAttributes: new { @class = "form-control" })

在控制器中,我将 ViewBag.MovesList 设置为 SelectList。这是一个有效的选择列表。我正在尝试为 foreach 循环中的多个项目重用相同的选择列表。然而,当它被渲染时,现有的 MovieID 值并没有在下拉列表中被选中。我见过很多类似的问题,但我没有看到它们的根本原因。此外,基于其他类似的问题,这与其他问题略有不同,因为它位于循环内部。

【问题讨论】:

标签: asp.net-mvc


【解决方案1】:

试试下面的方法:

@Html.DropDownListFor(model => model.MovieID, new SelectList((IEnumerable)ViewBag.MoviesList, "Value", "Text", Model.MovieID), new { @class = "form-control" })

Value 是您要传递给所调用操作的内容,Text 是您要在下拉菜单中显示的内容。

【讨论】:

  • 我会稍微调整一下这个答案,但我相信应该这样做。很遗憾,我每次都需要创建一个新的 SelectList。我不能只在其上设置一个属性并在循环中更改每个下拉列表的选定值
猜你喜欢
  • 2010-12-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多