0

我创建了一个 mvc3 应用程序。

有一种形式是我从用户那里获取值。

有一个领域叫Gender

我想给出一个下拉列表,其中包含值MaleFemale

但我不明白我在哪里以及如何指定那里的值,请帮忙。

我需要这个或任何异步脚本的 Ajax Helper 方法

4

2 回答 2

2

最简单的方法是在 Html 中执行此操作:

 <select id="selection" name="selection">
     <option value="1">Male</option>
     <option value="2">Female</option>
 </select>

您也可以使用 razor 执行此操作:

 @Html.DropDownLiwt("GenderSelection", "Male")

在控制器内部完成此操作后:

 Dim genderSelection As List(Of String) = New List(Of String)
 genderSelection.Add("Male")
 genderSelection.Add("Female")

 ViewData("GenderSelection") = New SelectList(genderSelection)
于 2012-04-10T14:57:17.537 回答
0

首先为您的下拉列表创建实体类。它将返回一个值列表

public class KeyValueEntity
    {
        public string Description { get; set; }
        public string Value { get; set; }
    }

public class MyViewModel
    {
        public List<KeyValueEntity> Status { get; set; }
}

在您的控制器上编写以下代码

[HttpGet]
        public ActionResult Dropdown()
        {  
                MyViewModel model = GetDefaultModel();  
                return View(model);
            }
        }


public MyViewModel GetDefaultModel()
        {
            var entity = new MyViewModel();            
            entity.Status = GetMyDropdownValues();            
            return entity;
        }


private List<KeyValueEntity> GetMyDropdownValues()
        {
            return new List<KeyValueEntity>
            {
                new KeyValueEntity { Description = "Yes" , Value ="1" },
                new KeyValueEntity { Description = "No" , Value ="0"}
            };
        }

您的 cshtml 页面的代码:现在您需要将您的视图与您的模型绑定在您定义模型类的视图之上

@model MyViewModel
Following is the code for dropdown binding

 @Html.LabelForModel("Status:")
            @Html.DropDownListFor(m => m.Status, new SelectList(Model.Status, "Value", "Description"), "-- Please Select --")
于 2012-07-18T12:28:52.100 回答