是mvc3 DataType.MultilineText中多選框的正確數據類型?這些最終來源於多對多關係。正確的MVC3模型類型的多選框?
由於
例 一個通道可以具有多個廣告位,以及廣告位可以有多個頻道。
我現在的模式是:
[Display(Name = "Ad Slots")]
[DataType(DataType.MultilineText)]
public string[] AdSlots { get; set; }
是一個多選,對嗎?
是mvc3 DataType.MultilineText中多選框的正確數據類型?這些最終來源於多對多關係。正確的MVC3模型類型的多選框?
由於
例 一個通道可以具有多個廣告位,以及廣告位可以有多個頻道。
我現在的模式是:
[Display(Name = "Ad Slots")]
[DataType(DataType.MultilineText)]
public string[] AdSlots { get; set; }
是一個多選,對嗎?
對於DOM元素,ASP.NET MVC不使用「類型」,persay。您將使用HtmlHelper.ListBox()
擴展方法。
此擴展方法返回一個多選列表框。
@Html.ListBox(
"YourFormFieldName",
new SelectList(new[] { "You can select this one", "and this one" })
)
編輯:對於模型,你可以這樣做:
public class YourViewModel
{
public MultiSelectList YourItems { get; set; }
}
,然後在一個POST,你可以看到被選中的項目。
我在說模型類型。 – Darren 2012-01-31 22:15:46
我想你可以使用類似System.Web.Mvc.MultiSelectList
這需要IEnuermable
集合。
檢查本文的詳細信息: http://ittecture.wordpress.com/2009/04/30/tip-of-the-day-198-asp-net-mvc-listbox-controls/
與你的編輯我的答案可能不是那麼有用,因爲你很可能不希望你的模型引用MVC,但你也許可以做到@Html.ListBox("AdSlots", new MultiSelectList(model.AdSlots))
自已經可以枚舉。
此多行類型表示textarea,而不是多選,它具有帶多選作爲屬性的標記。
MulitlineText用於文本區域 – HaBo 2012-01-31 22:07:56