我有动态模型的视图:
@model dynamic
对于文本框,我按以下方式绑定数据:
@Html.TextBox("Info", (string)Model.Info, new { @class = "form-control" })
对于DropDownList
,我无法选择值
@Html.DropDownList("Type", (IEnumerable<SelectListItem>)ViewBag.Type, "-- Select--", new { @class = "form-control" })
ViewBag.Type= new SelectList(new[]
{
new { Id = "1", Text = "Server" },
new { Id = "2", Text = "WorkStation" },
}, "Id", "Text", "1");
答案 0 :(得分:-1)
如果您计划使用静态<select>
列表,我建议您使用纯HTML执行此操作。继续为服务器端编译的内容添加负载并不是一个好的决定。
如果您计划从数据库中生成选择选项,则此处是MVC脚手架模块生成的示例。
<强>控制器:强>
ViewBag.CarColorID = new SelectList(db.CarColors, "CarColorID", "CarColorName");
查看:强>
@Html.DropDownList("CarModelID", null, htmlAttributes: new { @class = "form-control" })
这样,您可以使用Javascript或Jquery获取值:
$("#CarModelID").val();
document.getElementById("CarModelID").value;
或者通过将视图模型提交给具有视图模型的控制器来匹配HTML元素名称。