如何获取下拉列表的值

时间:2014-04-22 12:55:29

标签: asp.net-mvc-4 c#-4.0 dropdownbox

我正在尝试返回所选项目,当我调试我的代码时,视图数据轨道列表始终为空。

如何将值分配给视图数据?

public ActionResult EditParcel(int id)
{
    Parcel parc = _abcSearchService.GetAbcParcel(id);
    List<SelectListItem> TrackList = new List<SelectListItem>
    {
        new SelectListItem { Text = "Processing", Value = "Processing", Selected = true},      
        new SelectListItem { Text = "Out for delivery", Value = "Out for delivery"},
        new SelectListItem { Text = "Delivered", Value = "Delivered"},
    };
    ViewData["TrackList"] = TrackList.AsEnumerable();
}

1 个答案:

答案 0 :(得分:0)

这一切都取决于你如何设置下拉菜单。我建议不要使用viewbag / data来发送信息。将它放在viewmodel中构建列表,如何构建它,但将其保存到视图模型

viewModel.TrackList = TrackList;

然后在你的观点

@Html.DropDownListFor(x => x.Track, Model.TrackList)

for helper将覆盖所选属性。在这种情况下,要设置所选值,您需要将viewModel.Track设置为您想要选择的值,然后相应地设置for helper。如果您有任何问题,请告诉我。