您的位置:首页 > 其它

无刷新实现页面跳转

2010-11-03 10:16 253 查看
利用微软的ajax控件,实现无刷新的页面跳转。要实现整个页面跳转,大家用的最多可能是利用框架,我要的是的web用户控件。将一个PlaceHolder放在UpdatePanel中,作为更新的内容。有一个菜单控件切换界面。并将会传事件定义为菜单控件的单击事件
<asp:Menu ID="Menu1" runat="server" OnMenuItemClick="Menu1_MenuItemClick" Orientation="Horizontal" BackColor="#B5C7DE" DynamicHorizontalOffset="2" Font-Names="Verdana" Font-Size="0.8em" ForeColor="#284E98" StaticSubMenuIndent="10px">
<Items>
<asp:MenuItem Text="Page1" Value="Page1"></asp:MenuItem>
<asp:MenuItem Text="Page2" Value="Page2"></asp:MenuItem>
<asp:MenuItem Text="Page3" Value="Page3"></asp:MenuItem>
</Items>
</asp:Menu>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:PlaceHolder ID="PlaceHolder1" runat="server"></asp:PlaceHolder>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Menu1" EventName="MenuItemClick" />
</Triggers>
</asp:UpdatePanel>
在后台代码中出来菜单项单击事件,动态创建用户控件,并添加到占位控件PlaceHolder中
protected void Menu1_MenuItemClick(object sender, MenuEventArgs e)
{
PlaceHolder1.Controls.Clear();
switch (e.Item.Value)
{
case "Page1":
PlaceHolder1.Controls.Add(Page.LoadControl("UserControl1.ascx"));
break;
case "Page2":
PlaceHolder1.Controls.Add(Page.LoadControl("UserControl2.ascx"));
break;
case "Page3":
PlaceHolder1.Controls.Add(Page.LoadControl("UserControl3.ascx"));
break;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐