我在dropdownlist
绑定asp.net mvc 4
之前绑定我将一个值标记为已选中,但是当显示视图时,下拉列表被绑定但未选中所选值
List<SelectListItem> citylist = new List<SelectListItem>();
var status = (DataSet)_rtmi_repo.GetCity(ref BaseObject);
foreach (DataRow v in status.Tables[0].Rows)
{
if (v["CODE"].ToString() == selectedval)
{
citylist.Add(new SelectListItem { Text = v["CODE"].ToString(), Value = v["CODE"].ToString(), Selected = true });
}
else
{
citylist.Add(new SelectListItem { Text = v["CODE"].ToString(), Value = v["CODE"].ToString() });
}
}
查看
@{var ddl = (IEnumerable<SelectListItem>)ViewBag.Location;}
@Html.DropDownListFor(model=>model.Location,ddl , new { @class = "form-control" })
即使在ddl中它显示所选的true,但在绑定后它总是选择列表中的第一个值作为选择
还创建了filddle,但这里工作正常 "Example FIDDLE"
答案 0 :(得分:1)
如果您的viewbag
名称与model
属性名称相同,则所选选项不会设置为DropDownListFor
。