Procedura: rispondere a eventi del controllo server Web Button in script client

Aggiornamento: novembre 2007

I controlli Button possono generare sia eventi sul lato client che eventi sul lato server. Questi ultimi si verificano dopo i postback e vengono gestiti nel codice sul lato server scritto per la pagina. Gli eventi sul lato client sono gestiti in script client, in genere JavaScript (ECMAScript), e vengono generati prima dell'invio della pagina. Aggiungendo eventi sul lato client ai controlli Button ASP.NET, è possibile eseguire alcune attività, ad esempio visualizzare finestre di dialogo di conferma prima dell'invio della pagina e annullare completamente l'operazione di invio della pagina.

Per aggiungere uno script client che gestisce l'evento OnClientClick a un controllo server Web Button

  • Nel controllo server Web Button ASP.NET a cui si desidera aggiungere lo script client (un controllo Button, LinkButton o ImageButton), impostare la proprietà OnClientClick sullo script client che si desidera eseguire.

    Nota:

    Per annullare l'invio, impostare la proprietà OnClientClick sulla stringa "Return" e sul nome della funzione. Lo script client potrà, quindi, annullare l'invio restituendo false.

    Nell'esempio di codice riportato di seguito viene illustrato come aggiungere un evento script client click a un controllo Button.

    <%@ 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>
    

Vedere anche

Riferimenti

Cenni preliminari sui controlli server Web pulsante