Поделиться через


Практическое руководство. Отклик на события серверного веб-элемента управления "Кнопка" в клиентском сценарии

Обновлен: Ноябрь 2007

Элемент управления «Кнопка» может вызывать как события на стороне сервера, так и на стороне клиента. Серверные события возникают после обратных передач и обрабатываются в коде страницы на стороне сервера. Клиентские события обрабатываются в клиентском сценарии, как правило, JavaScript (ECMAScript) и вызываются перед отправкой страницы. Добавление к элементу управления ASP.NET «Кнопка» событий, выполняющихся на стороне клиента, позволяет реализовывать разнообразные задачи, например, отображать диалоговые окна с просьбой подтверждения перед отправкой страниц или позволяющие отменить отправку страницы.

Добавление клиентского сценария, который обрабатывает событие OnClientClick, серверному веб-элементу управления «Кнопка»

  • В серверном веб-элементе управления «Кнопка», к которому требуется добавить клиентский сценарий, (Button, LinkButton или ImageButton), присвойте клиентскому сценарию, который требуется запустить, свойство OnClientClick.

    ms227426.alert_note(ru-ru,VS.90).gifПримечание.

    Если необходимо реализовать возможность отмены отправки, присвойте свойству OnClientClick значение «Return» и укажите имя функции. После этого клиентский сценарий может отменить отправку, возвращая значение false.

    В следующем примере кода показано, как добавить элементу управления Button событие щелчка мыши в клиентском сценарии.

    <%@ Page Language="VB" %>
    <script runat="server">
        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" runat="server">
        <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 runat="server">
        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" runat="server">
        <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>
    

См. также

Ссылки

Общие сведения о серверном веб-элементе управления "Кнопка"