如何在mvc3应用程序中创建下拉列表?
问题描述:
我已经创建了一个mvc3应用程序。如何在mvc3应用程序中创建下拉列表?
有一种形式,我从用户获取价值。
有一个叫Gender
我想给的,与价值Male
和Female
一个下拉列表,但我不明白的地方,以及如何我有指定值,请帮助一个领域。
我需要这样的一个AJAX辅助方法或任何异步脚本
答
最简单的方法是做到这一点的HTML:
<select id="selection" name="selection">
<option value="1">Male</option>
<option value="2">Female</option>
</select>
你也可以用剃刀做到这一点:
@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)
答
首先为您的下拉菜单创建实体类。它将返回的值
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 --")
第一个结果在谷歌http://www.aspnetmvcninja.com/general/asp-net-mvc-dropdown-list-example – MilkyWayJoe 2012-04-10 14:52:01
是的,我已经试过,但问题是我需要选择那个从下拉列表中选择一个,然后选择我正在更改单选按钮值,但我需要所有这些作为异步 – Neo 2012-04-10 14:55:36
发表代码示例,您谈论更改单选按钮,请包括。 – Maess 2012-04-10 16:05:53