我使用asp.net mvc 2,我有DropDownListFor帮助器的问题。 我的ViewModel包含一个SelectList,其中包含所有必需值和1个SelectedValue。 当我在我的视图中使用DropDownListFor帮助程序时,未选择SelectedValue! 然后我选择另一个值并提交表单,在所选的PostedValue中的下一个渲染中。第一次渲染有什么问题?
<%=Html.LabelFor(m => m.Test)%>
<%=Html.DropDownListFor(m => m.Test, Model.TestList, new { tabindex = 1, @class = "selectbox" })%>
<%=Html.ValidationMessageFor(m => m.Test, null, new {@class = "text-hide", id = "Error-Test"})%>
答案 0 :(得分:1)
根据您提供的内容,无法说明为什么它不起作用,因为您既没有显示控制器也没有显示视图模型。
这是一个有效的例子:
型号:
public class MyModel
{
public string Test { get; set; }
public IEnumerable<SelectListItem> TestList
{
get
{
return new SelectList(new[]
{
new SelectListItem { Value = "1", Text = "text 1" },
new SelectListItem { Value = "2", Text = "text 2" },
new SelectListItem { Value = "3", Text = "text 3" },
}, "Value", "Text", Test);
}
}
}
控制器:
public class HomeController : Controller
{
public ActionResult Index()
{
return View(new MyModel { Test = "2" });
}
}
查看:
<%: Html.DropDownListFor(x => x.Test, Model.TestList) %>