我的视图中有一个事件处理程序,它会在单击id时做出反应。点击id后,我在控制器中调用了method1。
在同一视图中,我有一个dropdownlost,我用我在method1中设置的ViewData填充。
但是,因为在开始时,调用了Index,并且ViewData仍然是空的,我得到的错误是没有这样的ViewData来填充我的下拉列表。
如果Viewdata不是eppty,如何设置下拉列表?
答案 0 :(得分:0)
您可以在输出下拉列表之前测试ViewData中是否包含值:
<% if (ViewData["values"] != null) { %>
<%= Html.DropDownList("selectedValue", (IEnumerable<SelectListItem>)ViewData["values"]) %>
<% } %>
如果使用视图模型,甚至会更好:
<% if (Model.Values != null) { %>
<%= Html.DropDownListFor(x => x.SelectedValue, Model.Values) %>
<% } %>