[ASP.NET]UpdatePannel 局部刷新 -- 在母版页的两个Content中使用UpdatePannel

 

1,问题描述 

 今天在项目中碰见了一个局部页面刷新的问题,由于我的Master页分为三块,即三个Content,第一部分是头,第二部分是左边导航,第三部分是根据左边导航变化的内容。

现在点击左边导航后,整个页面都会进行刷新。

2,达到的要求

我想在点击导航条的时候,只刷新右边的内容。

3,实现的方法

我得ScriptManager是放在Master页里的

在内容页加入如下代码:

   protected void Page_LoadComplete(object sender, EventArgs e)
        {
            ScriptManager ScriptManager1 = (ScriptManager)this.Master.FindControl("ScriptManager1");
            //ScriptManager1是模板上面ScriptManager控件的id值
            ScriptManager1.RegisterAsyncPostBackControl(lbtn1);
            ScriptManager1.RegisterAsyncPostBackControl(lbtn2);
        }

在看看导航条按钮的点击事件

        protected void lbtn1_Click(object sender, EventArgs e)
        {
            TextBox1.Text = "3333333333333333333";
            up1.Update();
        }

在就是Web页的代码

<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true"
    CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication2.WebForm1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolderLeft" runat="server">
    <br />
    <asp:LinkButton ID="lbtn1" runat="server" OnClick="lbtn1_Click">LinkButton</asp:LinkButton>
    <br />
    <asp:LinkButton ID="lbtn2" runat="server" OnClick="lbtn2_Click">LinkButton</asp:LinkButton>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolderRight" runat="server">
    <br />
  
    <asp:UpdatePanel ID="up1" runat="server" UpdateMode="Conditional" RenderMode="Inline">
        <ContentTemplate>
            <asp:TextBox ID="TextBox1" runat="server">111111111111</asp:TextBox>
        </ContentTemplate>
    </asp:UpdatePanel>
    <br />
</asp:Content>

4,效果图

点击前

点击后

Ok,初步达到要求。

5 其他情况下地方法。

当导航条和内容在一个Content中,也就是我得第二个和第三个Content合二为一的时候

我们可以在Web页加入如下代码就可以了。

<asp:UpdatePanel ID="up1" runat="server" UpdateMode="Conditional" RenderMode="Inline">
        <ContentTemplate>
            <asp:TextBox ID="TextBox1" runat="server">111111111111</asp:TextBox>
        </ContentTemplate>
        <Triggers>
            <asp:AsyncPostBackTrigger ControlID="lbtn1" EventName="Click" />
            <asp:AsyncPostBackTrigger ControlID="lbtn2" EventName="Click" />
        </Triggers>
    </asp:UpdatePanel>
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值