JavaScript подтверждают с помощью ASP.NET - PullRequest
1 голос
/ 19 сентября 2011

Я использую подтверждение JavaScript в программе ASP.NET, окно подтверждения работает, когда я этого хочу, однако я не уверен, как узнать, нажимает ли пользователь «OK» или «Отмена».

Это в мастере сайта:

            <script type="text/javascript">

                    var confirmMsg = document.getElementById('MainContent_confirmMessageHidden');

                    if (confirmMsg != null) confirm(confirmMsg.value);

            </script>

Это в файле aspx.cs:

    private void Confirm(string msg)
    {
        //Response.Write("<script language = 'javascript'>window.alert('" + msg + "')</script>");
        confirmMessageHidden.Value = msg;
        confirmMessageHidden.Visible = true;


    }

Как я могу получить выбор пользователя?

Ответы [ 2 ]

3 голосов
/ 19 сентября 2011

Вам необходимо использовать возвращаемое значение функции подтверждения JavaScript.Например,

...

if (confirmMsg != null) {
  var answer = confirm(confirmMsg.value);
  if (answer) {
    alert('OK Clicked');
  }
  else {
    alert('Cancel Clicked');
  }
}
...

Выберите соответствующее действие вместо предупреждений в соответствии с необходимыми вам функциями.

РЕДАКТИРОВАТЬ:

Пример кода для предотвращения навигации с использованием подтверждения

<script type="text/javascript">
    function doConfirm() {
       var confirmMsg = document.getElementById('MainContent_confirmMessageHidden');
       if (confirmMsg != null) {
          return confirm(confirmMsg.value);
       }
       return true;
    }
</script>

<a href="link to some other page" onclick="return DoConfirm();" />

<input type="sumbit" value="Click Me" onclick="return DoConfirm();" />
1 голос
/ 19 сентября 2011

Вы можете использовать условное действие на основе подтверждения выбора:

например что-то вроде

if (confirm(confirmMsg.value))
{
     document.location('<your_process_page_url.aspx>?confirm=1');
}
else
{
     document.location('<your_process_page_url.aspx>?confirm=0');
}

Затем на странице процесса вы можете получить выбор по

<%
 var choose = Request.QueryString["confirm"];
%>
...