Функция на стороне клиента не работает должным образом - PullRequest
0 голосов
/ 22 декабря 2010
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Untitled Page</title>
    <script type="text/javascript">
    function abc()
    {
        return confirm('are U sure?');
    }
    </script>

</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="abc()" 
            onclick="Button1_Click" style="height: 26px" />

    </div>
    </form>
</body>
</html>

На приведенной выше странице, нажимаете ли вы кнопку ОК или отмените в окне подтверждения передачу обработки на сервер, почему?

Ответы [ 3 ]

1 голос
/ 22 декабря 2010

Должно быть так:

 OnClientClick="return abc();"
1 голос
/ 22 декабря 2010

Если я правильно понимаю вопрос, вы спрашиваете, почему, когда вы нажимаете кнопку 1, она отправляет сообщение обратно на сервер?

Это потому, что серверный элемент управления .

Если вы хотите простую кнопку клиента, она будет выглядеть следующим образом:

<input type="button" value="Button" OnClick="abc()" style="height: 26px" />

Это будет означать отсутствие обработки на сервере.

0 голосов
/ 22 декабря 2010

Поскольку это серверный элемент управления, отправка даже запускается.

Возвращаемое значение false (которое вы получите, нажав «отменить»), может остановить событие onclick, однако событие onsubmit все еще вызывается.

Вы можете попытаться сделать это вместо события onclick.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...