如何在Asp.net MVCrazor中获取所选项目的文本

时间:2015-04-21 07:57:39

标签: html asp.net-mvc razor

当我选择将其ID发送给Model的任何项目时,我有一个下拉列表,而我想发送所选项目的Text.How我可以这样做吗?这是我的代码,它发送所选项目的ID,我也发布代码获取所选项目的方法。请帮助我,我错了

查看

<div class="controls">
    <label class="site-label">Assign to</label>
    @Html.DropDownListFor(m => m.AssignedTo, (ViewBag.DispatchersList) as IEnumerable<SelectListItem>, new { @class = "" })
    @Html.ValidationMessageFor(m => m.AssignedTo)
</div>

控制器

public static object GetSelectListWithSelectOption(dynamic model, int selected, string valuefield, string textfield, bool addSelect = true, string addSelectValue = "-1", bool performSort = false)
{
    List<SelectListItem> selectList = null;
    if (model != null)
    {
        selectList = new SelectList(model, valuefield, textfield, selected).ToList();
        if (performSort)
            selectList = selectList.OrderBy(x => x.Text).ToList();
    }
    else
    {
        selectList = new List<SelectListItem>();
    }
    if (addSelect)
        selectList.Insert(0, new SelectListItem { Text = Cygnus.Library.Resources.General.txtSelect, Value = addSelectValue, Selected = true });
    return selectList;
}

1 个答案:

答案 0 :(得分:3)

要发回文本,只需使用您提供给Value媒体资源的相同值填充SelectListItems的{​​{1}}媒体资源。

Text