0
我对控制器侧这个代码初始化下拉Html.dropdownlist不保留所选择的值
List<SelectListItem> items = new List<SelectListItem>();
items.Add(new SelectListItem
{Text = "All",
Value = "All"
});
items.Add(new SelectListItem
{
Text = "val1",
Value = "val1"
});
items.Add(new SelectListItem
{
Text = "val2",
Value = "val2"
});
ViewData["DDLItems"] = items;
// I have added this code because I am passing the selection back to this action
if (Activefilter == null){ Activefilter = "All" ;}
ViewData["Activefilter"] = Activefilter;
在视图,我有此代码
<%= Html.DropDownList("ActiveFilter", (IEnumerable<SelectListItem>)ViewData["DDLItems"], new { onChange = "func(1)" })%>
jQuery的,我这
$(document).ready(function() {
$('#Activefilter').val(<%= ViewData["Activefilter"].ToString() %>);
}
所以,每当我改变下拉的值,行动被调用如上所示。的可视数据[“Actionfilter”]也需要在此行由用户选择的值,但是当控制回来视图,
$('#Filter').val(<%= ViewData["Activefilter"].ToString() %>);
,它说将值“全部”是未定义的。
每次页面重新加载时,我都希望下拉菜单保留选定的值。你能帮忙吗?
使用cookie?或会话变量? – ManseUK
你能举个例子吗?我如何实现它? – user1005310