ASP.NET MVC4 - 如何在按钮单击后保存下拉项

时间:2013-03-28 10:11:23

标签: asp.net-mvc forms asp.net-mvc-4 drop-down-menu

我有一些初始表单,用户可以在其中输入一些基本数据:

<fieldset>
    <legend>Registration Form</legend>
    <ol>
        <li>
            @Html.LabelFor(m => m.UserName)
            @Html.TextBoxFor(m => m.UserName)
        </li>
        <li>
            @Html.LabelFor(m => m.Password)
            @Html.PasswordFor(m => m.Password)
        </li>
        <li>
            @Html.LabelFor(m => m.ConfirmPassword)
            @Html.PasswordFor(m => m.ConfirmPassword)
        </li>
    </ol>
    <input type="submit" value="Register" />
</fieldset>

现在我想在此表单中添加一个附加字段,用户可以选择他知道的语言。它需要是一个下拉列表,右侧有按钮。当用户从下拉列表中选择语言并单击右侧的“添加”按钮时,应在下面显示该语言的名称。我不知道如何处理这个问题。我刚刚开始学习,所以它对我来说仍然有点混乱。

<li>
@Html.DropDownListFor(model => model.Language,
    new SelectList(Enum.GetValues(typeof(Pro.Web.Models.Data.Languages))))
</li>

我已经阅读了几个教程,但没有找到类似的东西。谢谢。

1 个答案:

答案 0 :(得分:3)

您可以使用多选列表,允许用户选择他知道的一种或多种语言:

<li>
    @Html.ListBoxFor(
        model => model.Language,
        Enum
           .GetValues(typeof(Pro.Web.Models.Data.Languages))
           .Cast<Pro.Web.Models.Data.Languages>()
           .Select(x => new SelectListItem 
           { 
               Value = x.ToString(), 
               Text = x.ToString() 
           })
    )
</li>