从一个 Viewbag select 列表创建多个下拉列表
Creating multiple Dropdownlist from one Viewbag select list
在控制器中:
DbModel db = new DbModel();
ViewBag.SUBJECT_NO = new SelectList(db.SUBJECT, "SUBJECT_NO", "SUBJECT_NAME");
从这个 viewbag 制作 DropDownList 的默认代码是:
@Html.DropDownList("SUBJECT_NO", String.Empty)
但鉴于我想从这个 viewbag 创建三个 select 列表。这样一位老师在科目列表中的三个科目中都有经验。但是每个 DropDownList 名称都不会是默认的 Viewbag 名称 "SUBJECT_NO"。它将是
"SUBJECT_NO1", "SUBJECT_NO2" , "SUBJECT_NO3".
并且在 DbModel 中,教师 class 将有三列包含这些名称。我不想针对一个 DbModel table 创建这么多视图包。此视图和操作中的主题将有 5 个不同的选项。为此,我必须为 5 个 DbModel classes 创建 5*3=15 个 viwbag。我想只用 5 个 Viewbags。
如果他能帮助我,我将非常感激。
@Html.DropDownList()
有 8 个覆盖。您只需要找到允许您定义源的那个即可。
喜欢
@Html.DropDownList("SUBJECT_NO1", (SelectList)ViewBag.SUBJECT_NO, string.Empty, null)
@Html.DropDownList("SUBJECT_NO2", (SelectList)ViewBag.SUBJECT_NO, string.Empty, null)
@Html.DropDownList("SUBJECT_NO3", (SelectList)ViewBag.SUBJECT_NO, string.Empty, null)
这个正好用到了方法
public static MvcHtmlString DropDownList(
this HtmlHelper htmlHelper,
string name,
IEnumerable<SelectListItem> selectList,
string optionLabel,
object htmlAttributes
);
在控制器中:
DbModel db = new DbModel();
ViewBag.SUBJECT_NO = new SelectList(db.SUBJECT, "SUBJECT_NO", "SUBJECT_NAME");
从这个 viewbag 制作 DropDownList 的默认代码是:
@Html.DropDownList("SUBJECT_NO", String.Empty)
但鉴于我想从这个 viewbag 创建三个 select 列表。这样一位老师在科目列表中的三个科目中都有经验。但是每个 DropDownList 名称都不会是默认的 Viewbag 名称 "SUBJECT_NO"。它将是
"SUBJECT_NO1", "SUBJECT_NO2" , "SUBJECT_NO3".
并且在 DbModel 中,教师 class 将有三列包含这些名称。我不想针对一个 DbModel table 创建这么多视图包。此视图和操作中的主题将有 5 个不同的选项。为此,我必须为 5 个 DbModel classes 创建 5*3=15 个 viwbag。我想只用 5 个 Viewbags。
如果他能帮助我,我将非常感激。
@Html.DropDownList()
有 8 个覆盖。您只需要找到允许您定义源的那个即可。
喜欢
@Html.DropDownList("SUBJECT_NO1", (SelectList)ViewBag.SUBJECT_NO, string.Empty, null)
@Html.DropDownList("SUBJECT_NO2", (SelectList)ViewBag.SUBJECT_NO, string.Empty, null)
@Html.DropDownList("SUBJECT_NO3", (SelectList)ViewBag.SUBJECT_NO, string.Empty, null)
这个正好用到了方法
public static MvcHtmlString DropDownList(
this HtmlHelper htmlHelper,
string name,
IEnumerable<SelectListItem> selectList,
string optionLabel,
object htmlAttributes
);