我想在我的表單中添加一個下拉列表,其中有2個值userid
和username
位於我的下拉列表中,並且我希望在單擊按鈕時獲取用戶選擇的值。我是MVC的新手,到目前爲止,我還沒有在dropdownlist上工作,嘗試過幾個樣本,但似乎沒有任何工作方式符合我的要求。如何在MVC3中添加下拉值?
回答
我會跳過大量的MVC3概念。如果你真的不熟悉ASP.NET MVC,你應該看看一些tutorials。
此代碼應幫助您:
VIEW
@using (Html.BeginForm("ACTION NAME", "CONTROLLER NAME"))
{
<select name="select">
<option value="username" selected>User name</option>
<option value="userid">User id</option>
</select>
<input type="submit" />
}
ACTION
[HttpPost]
public ActionResult ACTIONNAME(string select)
{
//...
}
請注意:
ACTION NAME
和CONTROLLER NAME
在BeginForm
幫手。您將不得不在您的代碼修改此select
名稱(「選擇」)和動作(「選擇」)的參數的名稱。這不是巧合,而是一個慣例。 MVC使用name
ATTR將數據綁定- 在選項
selected
屬性將使其成爲默認選項
問候
這裏的下拉菜單在哪裏? @ html.dropdownlist? – 2012-07-30 05:43:44
@alwaysv我*不*使用HTML助手(比如'@ Html.DropDownList')來確保您明白MVC是關於標記的,並且您可以自由地按自己的方式編寫它。此外,你沒有說你想用它的HTML幫手=) – 2012-07-30 05:46:20
是的,非常感謝,這工作正常,它的簡單,請你告訴我如何得到選定的價值?,讓我清楚,我需要爲我的actionresult獲取選定的值,基於這個我將執行一些數據庫操作 – 2012-07-30 05:46:42
見你可以做的辦法之一是在模型發送列表財產的結合和值,你可以把它綁定到像另一個特性:
public class YourModel
{
public List<UserList> OptionList { get; set; }
public String YourValue{get;set;}
}
public class UserList
{
public String UserName{get;set;}
public String UserId{get;set;}
}
@Html.DropDownListFor(model => model.YourValue, Model.OptionList, "")
在幫助有overided這是用來指定的值和文本選項。
並記住:
這是StackOverflow。 即使你嘗試過的不工作的例子對那些試圖幫助你的人來說也很重要,因爲他們正在爲你花費他們寶貴的帶寬。
你並不需要創建一個新的模型類爲每個視圖,只是把這個控制器上:
ViewBag.FieldName = new SelectList(new List<SelectListItem>() {
new SelectListItem { Value = "userid", Text = "User ID" },
new SelectListItem { Value = "username", Text = "User name" }
});
這對觀點:
@Html.DropDownList("FieldName")
您需要創建一個SelectListItem的集合,如:
IEnumerable<SelectListItem> selectList = from c in areaListResponse.Item select new SelectListItem { Text = c.AreaName, Value = c.Id.ToString() };
通過這次的SelectList到您的視圖:
return View(selectList);
在你CSHTML:
@model IEnumerable<SelectListItem> @Html.DropDownListFor(m => m.RequestAreaName, Model)
如果需要complecated對象,你可能需要一個包裝類,如:
public class RaiseRequestModelWrapper { public IEnumerable<SelectListItem> GetModel { get; set; } public RaiseRequestModel PostModel { get; set; } }
- 1. 如何將虛擬值添加到MVC3中的下拉列表中
- 2. 如何在下拉菜單中添加選項值/默認下拉值
- 3. 如何添加下拉列表到我的MVC3應用程序
- 4. 如何在java腳本中的下拉列表中添加值
- 5. 如何在mvc3中使用jquery ajax處理默認下拉值?
- 6. 如何添加nofollow下拉
- 7. 動態添加下拉值
- 8. 添加下拉值動態
- 9. 如何使用java servlet在下拉列表中添加值
- 10. 如何在下拉列表中添加值的jQuery
- 11. 如何將下拉框中的值添加到Mysql查詢中?
- 12. 添加到一個下拉列表中MVC3
- 13. 如何在mvc3中添加複選框?
- 14. 如何在MVC3中將WebGrid添加列
- 15. 如何添加/刪除下拉列表中使用jQuery的值
- 16. 如何向Rails中的collection_select(下拉列表)添加/刪除值?
- 17. 如何將新值添加到Rails的下拉列表中
- 18. MVC3 ASP.NET;如何在輸入中添加值[type =「text」]?
- 19. 驗證下拉在MVC3
- 20. MVC3下拉列表
- 21. 下拉列表 - MVC3
- 22. MVC3:如何驗證下拉列表?
- 23. 下拉列表值無法與MVC3 C#
- 24. 基於其他下拉顯示值MVC3下拉選擇
- 25. 如何添加下拉式子菜單
- 26. 如何添加coutry下拉使用openUI5
- 27. 如何添加下拉列表框
- 28. 如何添加下拉菜單圖標?
- 29. 如何動態添加下拉列表
- 30. 如何添加下拉列表detailview asp.net
那麼,它不會是一個下拉列表,而是一個'
看看這裏,有一個類似的例子http://stackoverflow.com/questions/10649081/howcome-i-populate-selectlist-with-list-of-categories – lexeme 2012-07-30 05:33:13
告訴我們沒有工作的樣本,你會知道在哪裏你錯了! ! – V4Vendetta 2012-07-30 05:33:28