Событие OnClick не срабатывает при нажатии кнопки ASP.NET - PullRequest
0 голосов
/ 14 января 2020

У меня есть asp: кнопка, которая находится в диалоговом окне JavaScript. У него есть событие OnClick с именем DialogWindowButton_Click, как вы можете видеть в коде ниже. Событие не запускается, и я поставил точки останова в файле C#, и он даже не входит в функцию. Я не уверен, почему и посмотрел на других сообщениях на форуме, чтобы попытаться выяснить это. Я 1) удалил кнопку и заново создал кнопку и событие OnClick (это не сработало), и 2) добавил CausesValidation = "False" к тегу asp: Button. Ни один проспект не работал. То, что у меня есть, показано ниже:

<div style="margin:auto; width:100px; padding-bottom:15px;">
    <asp:Button ID="DialogWindowButton" runat="server" Text="Save Entry" 
    OnClick="DialogWindowButton_Click" CausesValidation="False"/>
</div>

Затем в файле C# у меня есть:

    ...
    protected void Page_Load(object sender, EventArgs e)
    {

    }

    protected void DialogWindowButton_Click(object sender, EventArgs e)
    {
        DialogWindowButton_ClickHelper();
        ...
    }

    protected AddressBookEntry DialogWindowButton_ClickHelper()
    {
        ...
    }
    ...

У меня есть правильный файл для тега CodeBehind, а также для Наследует тег. В файле C# вы можете видеть, что исходное событие OnClick вызывает вспомогательную функцию, определенную непосредственно под ним, но точки останова в верхней части DialogWindowButton_Click () не достигаются. Также нет ошибок сборки. Может ли быть что-то еще, что я скучаю? Спасибо!

1 Ответ

1 голос
/ 14 января 2020

Вам необходимо установить UseSubmitBehavior на false (по умолчанию - true):

 <asp:Button ID="DialogWindowButton" runat="server" Text="Save Entry" 
    UseSubmitBehavior="False" OnClick="DialogWindowButton_Click" CausesValidation="False" />

С Ссылка :

Используйте свойство UseSubmitBehavior, чтобы указать, использует ли элемент управления Button механизм отправки в браузере клиента или механизм обратной передачи ASP. NET. По умолчанию значение этого свойства равно true, поэтому элемент управления Button использует механизм отправки браузера. Если указано значение false, каркас страницы ASP. NET добавляет клиентский сценарий на страницу для отправки формы на сервер.

...