Html.DropDownList从列表<string> </string>中选择值

时间:2012-01-26 20:52:29

标签: c# asp.net-mvc asp.net-mvc-3

所以我使用一个字符串列表来填充DropDownList它工作得很好但是当用户进入编辑视图时我需要 Relacion 将值保存在db,在DropDownList中选择。怎么能用dothat?

List<string> x = new List<string> { "string1", "string2", "string3", " string4" };
            ViewBag.Relacion = new SelectList(x);

 <div class="editor-label">
            @Html.LabelFor(model => model.Relacion)
        </div>
           <div class="editor-field">
            @Html.DropDownList("Relacion")
            @Html.ValidationMessageFor(model => model.Relacion)
        </div>

2 个答案:

答案 0 :(得分:0)

我建议您使用Telerik控件。他们有DropDownListComboboxGrid等等。这是一个拥有许多用户的开源项目。

请参阅this DEMO

答案 1 :(得分:0)

您需要为下拉列表提供值,而不仅仅是文本字符串 如果你的模型不知道关于选择的值,你可以使用javascrip并做这样的事情

<script type="text/javascript">
    $(document).ready(function () {

$('select[name=Relacion]').val($('#Relaciontext').val());

}
</script>
 <div class="editor-field" style="display:none" >
               @Html.TextBox("Relaciontext", ViewData["statecode"])

        </div>
   @Html.DropDownList("Relacion")

ViewData["statecode"]="string1";

但理想情况下,您需要使用所选列表填充下拉列表,然后建模

创建选择列表

  @Html.DropDownListFor(model => model.Relacion, (IEnumerable<SelectListItem>)ViewData["Relacion"])