2012-04-10 55 views
0

我已經創建了一個mvc3應用程序。如何在mvc3應用程序中創建下拉列表?

有一種形式,我從用戶獲取價值。

有一個叫Gender

我想給的,與價值MaleFemale

一個下拉列表,但我不明白的地方,以及如何我有指定值,請幫助一個領域。

我需要這樣的一個AJAX輔助方法或任何異步腳本

+2

第一個結果在谷歌http://www.aspnetmvcninja.com/general/asp-net-mvc-dropdown-list-example – MilkyWayJoe 2012-04-10 14:52:01

+0

是的,我已經試過,但問題是我需要選擇那個從下拉列表中選擇一個,然後選擇我正在更改單選按鈕值,但我需要所有這些作爲異步 – Neo 2012-04-10 14:55:36

+0

發表代碼示例,您談論更改單選按鈕,請包括。 – Maess 2012-04-10 16:05:53

回答

2

最簡單的方法是做到這一點的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) 
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 --")