2017-07-27 6 views
0

J'ai une mise à jour de la page maître qui montre le chargeur quand la page de contenu est rafraichie ou en postback mais sur ma page de contenu tout fonctionne correctement pour le bouton de téléchargement. désactivé lorsque cliqué.La barre de progression de mise à jour ne fonctionne pas avec postbacktrigger

Ceci est la page principale:

<div class="container-fluid" id="body"> 
    <asp:UpdatePanel ID="UpdatePanel1" runat="server"> 
     <ContentTemplate> 
      <asp:ContentPlaceHolder ID="BodyContentPlaceHolder" runat="server"> 
      </asp:ContentPlaceHolder> 
     </ContentTemplate> 
     <Triggers> 
      <asp:AsyncPostBackTrigger ControlID="menuBar" /> 
      <asp:AsyncPostBackTrigger ControlID="MenuCategories" /> 
     </Triggers> 
    </asp:UpdatePanel> 

    <asp:UpdateProgress ID="progress" runat="server" DynamicLayout="true" DisplayAfter="0"> 
     <ProgressTemplate> 
      <div class="ui-widget-overlay"> 
       <div id="dvLoading"> 
       </div> 
      </div> 
     </ProgressTemplate> 
    </asp:UpdateProgress> 
</div> 
<script type="text/javascript"> 
    var updateProgress = null; 
    function postbackButtonClick() { 
     updateProgress = $find("<%= progress.ClientID %>"); 
     window.setTimeout("updateProgress.set_visible(true)", updateProgress.get_displayAfter()); 
     return true; 
    } 
</script> 

ceci est ma page de contenu:

<asp:Content ID="Content2" ContentPlaceHolderID="BodyContentPlaceHolder" runat="Server"> 
    <asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager> 
    <asp:UpdatePanel ID="UpdatePanel1" runat="server"> 
    <ContentTemplate> 
     <table style="float: right;"> 
      <tr> 
       <td class="Asplabel"><b>No of Records:</b></td> 
       <td> 
        <asp:Label ID="lblRecordsCount" runat="server" Text="" CssClass="Asplabel" Font-Bold="true"></asp:Label> 
       </td> 
       <td> 
         <asp:LinkButton ID="BtnDownload" ClientIDMode="Static" OnClientClick="return postbackButtonClick();" runat="server" Enabled="true" ToolTip="Download Files" CssClass="btn" style="color: #0089d0;" OnClick="BtnDownload_Click"> 
         <i class="fa fa-download"></i> 
         </asp:LinkButton> 
       </td> 
      </tr> 
     </table> 
    </ContentTemplate> 
    <Triggers> 
     <asp:PostBackTrigger ControlID="BtnDownload"/> 
    </Triggers> 
    </asp:UpdatePanel> 
</asp:Content> 

Sur chargeur Charg fonctionne très bien et aussi pour d'autres contrôles où postback se produit à l'exception du bouton de téléchargement le chargeur apparaît mais ne disparaît pas Comment devrais-je définir la visibilty false pour le bouton de téléchargement après que le pasotback se produise?

Répondre

0

Pour les contrôles de PostBackTrigger, mettre à jour des progrès peuvent être affichés comme

Afficher:

var updateprogress = document.getElementById('<%=((UpdateProgress)Master.FindControl("UpdateProgress1")).ClientID %>'); 
updateprogress.style.display = "inline-block"; 

Cacher:

var updateprogress = document.getElementById('<%=((UpdateProgress)Master.FindControl("UpdateProgress1")).ClientID %>'); 
updateprogress.style.display = "none";