Отображение окна предупреждения «Да / Нет» в коде C # позади - PullRequest
4 голосов
/ 30 сентября 2010

Я пытаюсь отобразить окно сообщения «Да / Нет» из кода в C #.Я хочу вызвать процедуру «AddRecord», если пользователь нажимает «Да», и ничего не делать, если пользователь нажимает «Нет».

В идеале я хочу использовать приведенный ниже код, но из кода:

OnClientClick = "return confirm('Are you sure you want to delete?');"

Я ищу в SO и Google, но не смог найти ничего полезного.

Ответы [ 6 ]

12 голосов
/ 30 сентября 2010

на вашей кнопке Add Record, просто сделайте следующее:

    <asp:button ID="AddRecordbutton" runat="server" Text="Add Record"
 onclick="AddRecordButton_Click" onclientclick="return confirm('add record?');" />

В своем коде просто поместите код добавления записи в ваш обработчик события AddRecordButton_Click.Он будет вызываться только в том случае, если во всплывающем окне будет щелкнуто «Да».


В качестве альтернативы, ваш код может назначить код onclientclick при первоначальной обработке кнопки.1009 *

protected void Page_Load(object sender, EventArgs e) {
  AddRecordButton.OnClientClick = @"return confirm('Add Record?');";
}
2 голосов
/ 30 сентября 2010

Нет, нет.

Похоже, вы неправильно понимаете основную концепцию веб-страницы.

Страница ASPX - это короткая программа, которая запускается, генерирует кажущийся HTML, а затем завершается. Затем HTML отправляется через Интернет в браузер пользователя. ВСЕ, что вы делаете в коде, должно быть завершено до того, как пользователь когда-либо увидит его.

Вы действительно хотите диалоговое окно JavaScript. (На самом деле, из того, что вы описываете, вы можете просто создать Div в виде окна сообщения в HTML со стандартной HTML-формой на нем.)

1 голос
/ 30 сентября 2010

Чтобы отобразить реальное окно сообщения, вам понадобится JavaScript, как это делается на стороне клиента.По какой-то причине, если вы не можете использовать javascript, вы можете сделать то, что предложил AEMLoviji, и «подделать» его с некоторым умом.

Обратите внимание, что вам не нужен jQuery для отображения окна сообщений, достаточно простого javascript.

0 голосов
/ 17 октября 2017

Показать да / нет

<script>     
        function AlertFunction() {
            if (confirm('Are you sure you want to save this thing into the database?')) {
               $('#ConfirmMessageResponse').val('Yes');
            } else {
                $('#ConfirmMessageResponse').val('No');
            }
        }
    </script>

для обработки со стороны .net:

string confirmValue = ConfirmMessageResponse.Value;
                if (confirmValue == "Yes")
                {...}
0 голосов
/ 30 сентября 2010

Использование RegisterStartupScript

ScriptManager.RegisterStartupScript(this, GetType(), "unique_key",
    "element.onclick = function(){ return confirm('Are you sure you want to delete?'); };",
    true);
0 голосов
/ 30 сентября 2010

Если вы используете модальное всплывающее расширение Ajax Control Toolkit на панели двумя кнопками, это вызовет на сервере событие, которое можно обработать и выполнить любой метод / функции, которые вы пожелаете

См. здесь для примера

...