UpdateProgress的AssociatedUpdatePanelID属性


<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
            
<ContentTemplate>
                
<%=DateTime.Now %><asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
            
</ContentTemplate>
            
<Triggers>
                
<asp:AsyncPostBackTrigger ControlID="Button1" />
            
</Triggers>
        
</asp:UpdatePanel>
        
        
<asp:UpdateProgress ID="UpdateProgress1" runat="server" AssociatedUpdatePanelID="UpdatePanel1">
            
<ProgressTemplate>
                
<span>123</span>
            
</ProgressTemplate>
        
</asp:UpdateProgress>
        
<asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional">
            
<ContentTemplate>
                
<%=DateTime.Now %><asp:Button ID="Button2" runat="server" Text="Button" OnClick="Button1_Click" />
            
</ContentTemplate>
            
<Triggers>
                
<asp:AsyncPostBackTrigger ControlID="Button2" />
            
</Triggers>
        
</asp:UpdatePanel>
        
        
<asp:UpdateProgress ID="UpdateProgress2" runat="server" AssociatedUpdatePanelID="UpdatePanel2">
            
<ProgressTemplate>
                
<span>321</span>
            
</ProgressTemplate>
        
</asp:UpdateProgress>

 

上面的代码是实现,点击Button1显示123 ,点击Button2显示321,

关键点在于 Button位置,如果Button在<ContentTemplate>中,则UpdateProgress中的内容可 以显示,如果说Button的位置在<ContentTemplate>外,既UpdatePanel的外部的话, UpdateProgress中的内容就不会显示了!

方法二:

如果Button的位置必需在UpdatePanel的外部的话,就得运用PageRequestManager中的initializeRequest事件和endRequest事件,代码如下:

 


<Triggers>
    
<asp:AsyncPostBackTrigger ControlID="Button1" EventName="Event"/>
</Triggers>

 

 


var prm = Sys.WebForms.PageRequestManager.getInstance(); 
prm.add_initializeRequest(InitializeRequest);
prm.add_endRequest(EndRequest);
var postBackElement;
function InitializeRequest(sender, args)

  
if (prm.get_isInAsyncPostBack())
  args.set_cancel(
true);
  postBackElement 
= args.get_postBackElement(); 

  
if (postBackElement.id == 'Button1')
  $get(
'UpdateProgress1').style.display = 'block';
}
function EndRequest(sender, args)

  
if (postBackElement.id == 'Button1')
  $get(
'UpdateProgress1').style.display = 'none'
}

 

 

原文:

http://www.codeproject.com/KB/ajax/UpdateProgress.aspx

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值