【问题标题】:maintain state in a mvc drop down在 mvc 下拉菜单中保持状态
【发布时间】:2015-03-24 09:45:00
【问题描述】:

我有以下代码,当我更新时,我会从下拉列表中得到正确的结果。即,如果我将其中一个列表项更新为“已关闭”,它会完全按照视图和数据库中的说明进行操作。

但是一旦我离开视野然后回来,我就失去了“状态”。有没有办法可以在其中添加“已选择”,我需要重新考虑吗?

@{
    var listItems = new List<ListItem> {
    new ListItem {Text = "Open", Value = "Open"},
    new ListItem {Text = "Closed", Value = "Closed"},
    new ListItem {Text = "Standby", Value = "Standby"}};
}
@Html.DropDownList("Parks[" + (@i + 10) + "].ParkStatus", new SelectList(listItems), new { @class = "form-control" })

编辑

我想我需要在下面的字符串中添加某种 "Is Selected"

@Html.DropDownList("Parks[" + (@i + 10) + "].ParkStatus", new SelectList(listItems), new { @class = "form-control" })

【问题讨论】:

    标签: model-view-controller


    【解决方案1】:

    您需要使用@Html.DropDownListFor - 请参阅此问题Difference between DropDownlist or DropDownListFor Html helper

    【讨论】:

    【解决方案2】:

    解决了,我在正确的轨道上,需要额外的参数:

    @Html.DropDownList("Parks[" + (@i + 10) + "].ParkStatus", new SelectList(listItems), new { @class = "form-control" })
    

    现在看起来像这样:

    @Html.DropDownList("Parks[" + (@i + 10) + "].ParkStatus", new SelectList(listItems, "Text", "Value", Model[i].ParkStatus), new { @class = "form-control" })
    

    而且效果很好。

    感谢您帮助 ste-fu,您帮助我指明了正确的方向。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-04-08
      • 1970-01-01
      • 2019-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多