[英]asp.net html.listboxfor
我將如何填充ASP.NET MVC列表框? 讓它不可選擇? 我將如何從列表框中刪除所選項目
你想要一個不可選擇的選擇?
<%= Html.ListBoxFor( m => m.Choices,
Model.ChoicesMenu,
new { disabled = "disabled" } ) %>
我們的想法是你的模型需要有一個IEnumerable<SelectListItem>
,它將為你的選擇保留可能的鍵/值對,這里是ChoicesMenu
。 選擇的實際值(如果可以選擇)將在Choices
屬性中發布。 使用允許您指定html屬性的簽名並使其禁用以防止選擇它。 當然,您可以使用javascript執行此操作(或撤消它)。
模型:
public class ViewModel
{
public int[] Choices { get; set; }
public IEnumerable<SelectListItem> ChoicesMenu { get; set; }
}
行動(相關位)
var model = new ViewModel
{
ChoicesMenu = db.Items
.Select( i => new SelectListItem
{
Text = i.Name,
Value = i.ID.ToString()
} );
}
具有多種選擇的MVC ModelBind ListBox可能會為您提供第一個答案。
您可以禁用列表框中的項目,但不能禁用列表框本身。 如果將Visible設置為false,則不會顯示整個列表框。
做類似的事情:
ListBox.Items[X].Selected = false
將使項目不可選。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.