【发布时间】:2010-08-19 15:11:49
【问题描述】:
我有一个母版页,该页的左侧有一个用户控件,并带有一个下拉菜单。当用户从下拉列表中选择一个值时,我需要加载一个不同的 aspx 页面。新页面的左侧有一个类似(但不一样)的用户控件,右侧有不同的内容。我怎样才能做到这一点?此外,当新页面加载时,下拉菜单必须记住它的选择。
【问题讨论】:
-
这只是 asp.net 还是 asp.net mvc?
我有一个母版页,该页的左侧有一个用户控件,并带有一个下拉菜单。当用户从下拉列表中选择一个值时,我需要加载一个不同的 aspx 页面。新页面的左侧有一个类似(但不一样)的用户控件,右侧有不同的内容。我怎样才能做到这一点?此外,当新页面加载时,下拉菜单必须记住它的选择。
【问题讨论】:
不确定是否要使用 Javascript。如果你这样做了,那么试试这个 JQuery 方法。
// 仅在页面完全加载后加载。
$(function()
{
// Assume that the dropdownlist's id is TheList
$('#TheList').change(function(e){
var target = $(this).val();
if(target.length > 0)
{
// go to new URL
window.location.replace("http://www.locationurl.com/"+target);
}
});
});
【讨论】:
在下拉列表中将 AutoPostback 设置为 true。处理OnSelectedChanged,然后将选定的值传递到 Response.Redirect 上的下一页:
Response.Redirect(String.Format("NextPage.aspx?selected={0}", MyDropDownList.SelectedValue));
然后在您的新页面中,检查该查询参数并适当设置下拉列表的 SelectedValue。
【讨论】: