Gewusst wie: Reagieren auf Ereignisse in Button-Webserversteuerelementen in Clientskript
Aktualisiert: November 2007
Schaltflächen-Steuerelemente können sowohl Serverereignisse als auch Clientereignisse auslösen. Serverereignisse treten nach dem Postback auf und werden vom serverseitigen Code der Seite behandelt. Clientereignisse werden im Clientskript behandelt, das üblicherweise in JavaScript (ECMAScript) verfasst ist. Clientereignisse treten auf, bevor die Seite übermittelt wird. Indem Sie ASP.NET-Schaltflächen-Steuerelementen clientseitige Ereignisse hinzufügen, können Sie vor dem Übermitteln einer Seite z. B. ein Bestätigungsdialogfeld anzeigen oder die Seitenübermittlung ganz abbrechen.
So fügen Sie einem Button-Webserversteuerelement Clientskript hinzu, das das OnClientClick-Ereignis behandelt
Legen Sie im Webserversteuerelement der ASP.NET-Schaltfläche, dem Sie Clientskript hinzufügen möchten (einem Button-Steuerelement, LinkButton-Steuerelement oder ImageButton-Steuerelement), die OnClientClick-Eigenschaft auf das auszuführende Clientskript fest.
Hinweis: Wenn Sie über die Möglichkeit zum Abbrechen der Übermittlung verfügen möchten, legen Sie die OnClientClick-Eigenschaft auf die Zeichenfolge "Return" und den Funktionsnamen fest. Das Clientskript kann dann die Übermittlung abbrechen, indem es false zurückgibt.
Im folgenden Codebeispiel wird veranschaulicht, wie einem Button-Steuerelement ein Clientskript mit einem Klickereignis hinzugefügt wird.
<%@ Page Language="VB" %> <script > Sub Button1_Click(ByVal sender As Object, _ ByVal e As System.EventArgs) Label1.Text = "Server click handler called." End Sub </script> <body> <form id="form1" > <asp:Button ID="Button1" Runat="server" OnClick="Button1_Click" OnClientClick="return confirm('Ready to submit.')" Text="Test Client Click" /> <br /> <asp:Label ID="Label1" Runat="server" text="" /> </form> </body> </html>
<%@ Page Language="C#" %> <script > void Button1_Click(Object sender, EventArgs e) Label1.Text = "Server click handler called."; End Sub </script> <html xmlns="http://www.w3.org/1999/xhtml" > <body> <form id="form1" > <asp:Button ID="Button1" Runat="server" OnClick="Button1_Click" OnClientClick="return confirm('Ready to submit.')" Text="Test Client Click" /> <br /> <asp:Label ID="Label1" Runat="server" text="" /> </form> </body> </html>