2010-06-06 12 views

Antwort

1

Ungeprüfte

<script type="text/javascript"> 
    var app = Sys.Application; 
    app.add_init(ApplicationInit); 

    function ApplicationInit(sender) { 
    var prm = Sys.WebForms.PageRequestManager.getInstance(); 
    if (!prm.get_isInAsyncPostBack()) 
    { 
     prm.add_pageLoaded(PageLoaded); 
    } 
    } 

    function PageLoaded(sender, args) { 
    //Do something 
    } 

</script> 
21

Dies ist der Weg, um das Ende Ereignis nach dem Update zu erhalten.

<script type="text/javascript"> 
    var prm = Sys.WebForms.PageRequestManager.getInstance(); 
    prm.add_endRequest(EndRequest); 

    function EndRequest(sender, args) { 
    } 
</script> 
+6

aktualisiert Das ist schön. – DFTR

1

Wenn Sie AJAX verwenden, dann ist die einzige Art, wie ich noch nicht gefunden haben, eine Benachrichtigung an einen Benutzer auf Rückkehr in den Asynchronous Post zurück zu geben, ist eine „End-Anfrage“ Handler der Pagerequestmanager hinzuzufügen.

Auf diese Weise können Sie dem Anforderungsmanager mitteilen, dass er eine JavaScript-Funktion ausführen soll, wenn er von einem asynchronen Postback-Ereignis von AJAX zurückkehrt.

-Code, dies zu tun ist:

function load() 

{ 
    Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler); 
} 

wo „EndRequestHandler“ wird der Name Ihres Javascript-Funktion Sie anrufen möchten sein. Rufen Sie die obige Funktion in Onload Fall tag:

<body onload=”load()”> 

function EndRequestHandler() 

{ 

      alert(“You record has been saved successfully”); 

} 

Jetzt Wenn Sie auf Ihre Logik in Server-seitigen Code (Code-behind) eine andere Nachricht basierend geben möchten, dann können Sie eine Server-Seite Verstecktes Feld verwenden:

<input id=”hdnValue” type=”hidden” runat=”server” value=”" /> 

Setzen Sie den Wert in serverseitigen Code auf Asychrones Post zurück:

Protected Sub btn_Click (ByVal Absender als Gegenstand, ByVal e As System.EventArgs) Griffe btnCreateSample.Click

If condition Then 

    hdnValue.value = “do this” 

    Else  

    hdnValue.value = “do that” 

    End If 

End Sub 

Jetzt können Sie den Wert dieses Verstecktes Feld überprüfen in Ihrer Client Side EndRequestHandler Funktion und geben eine andere Warnung an Benutzern basierend auf ihrem Wert:

function EndRequestHandler() 
{ 
    if (document.getElementById(‘<%= hdnValue.ClientID %>’).value == “do this”) 

    { 
      alert(“You record has been saved successfully”); 
    } 
    else 
    { 
      alert(“There is an error”); 
    } 
} 
0

Sie mit folgendem Code verwenden können, wenn Jquery verwendet wird

Dies ist gespeicherte Nachricht zu zeigen, und die Nachricht nach 5 Sekunden auszublenden, nachdem Update-Panel

function pageLoad() { 
      window.Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler); 
     } 
     function EndRequestHandler() 
     { 
      window.setTimeout(function() { 
       var label = window.$get('<%= lblMsg.ClientID%>'); 
       if (label != null) { label.style.display = 'none'; } 
      }, 5000); 
     } 
Verwandte Themen