2013-12-18 70 views
0

在一個MVC頁面中,幾個子動作調用了我的DropdownListController。控制器在我的表單中呈現具有下拉字段的泛型部分頁面。部分頁面如下所示。問題在於,即使我在HtmlAttribute參數中指定了名稱,Html.DropdownListFor始終會以「SelectedItem」作爲名稱生成下拉列表。如何爲DropdownListController的每個子操作調用獲取這個唯一的下拉列表名稱?另外,ValidateionMessageFor不會顯示何時必須選擇a值。DropDownListFor不呈現唯一名稱

@model MyProject.ViewModels.DropDownListViewModel 

@Html.DropDownListFor(m => m.SelectedItem, Model.Items, Model.Label, new { id=Model.ElementName, name = Model.ElementName}) 

@Html.ValidationMessageFor(m=>m.ElementName) 

回答

0

DropDownListFor指令將m.SelectedItem設置爲控件的名稱+標識。那麼,爲什麼你不能使用以下?

@Html.DropDownListFor(m => m.ElementName, Model.Items, Model.Label)