我正在尝试使用Html.DropDownList并根据查询字符串选择值:
@{
var collectionStatusSelections = new List<SelectListItem>();
collectionStatusSelections.Add(new SelectListItem() { Value = "Pending", Text = "Pending" });
collectionStatusSelections.Add(new SelectListItem() { Value = "Collected", Text = "Collected" });
}
@Html.DropDownList("collectionStatus", collectionStatusSelections, Context.Request.Query["collectionStatus"].ToString());
但是,无论查询字符串中的值如何,都会添加到生成的 HTML <select>
的第一项中。(例如,"?collectionStatus=AAA"将添加"AAA"(
.HTML。下拉文档
选项标签
字符串
默认空项的文本。如果参数为 null,则不包括此类项目。
如果您的问题是如何在查询字符串不存在时包含默认文本,请检查 null 并在 true 时使用默认字符串。
@Html.DropDownList("collectionStatus", collectionStatusSelections, Context.Request.Query["collectionStatus"].ToString() ?? “Default”);