簡體   English   中英

如何在按鈕單擊后的代碼中調用警報框?

[英]how to call an alert box in code behind on button click in?

我有一個按鈕,當單擊它時,我必須使用“確定”“取消”按鈕生成一個警報框。 我是這樣做的,.aspx上的腳本是,

 <script>

   function getConfirmationValue2() 
   {var confirm_value = document.createElement("INPUT");
        confirm_value.type = "hidden";
        confirm_value.name = "confirm_value2";
        if (confirm("Save??")) {
            confirm_value.value = "OK";
        } else {
            confirm_value.value = "CANCEL";
        }
        document.forms[0].appendChild(confirm_value);
   } </script>

      <asp:ImageButton ID="btn_submit"   runat="server" ImageUrl="~/images/BtnSubmit.png" CausesValidation="true"    
                    onclick="btn_submit_click"/>

在按鈕上單擊

  protected void btn_submit_click(object sender, ImageClickEventArgs e)
{
                       if(TextBox1.Text="start")
                        {
                        btn_submit.OnClientClick = @"return getConfirmationValue2();";
                        string confirmValue122 = Request.Form["confirm_value2"];

                        if (confirmValue122 == "OK")
                        {
                            //updating the datas
                          }

                       }}}

僅在兩次單擊按鈕時,它才會生成警報框。 有什么問題嗎?

您需要將其綁定到按鈕的標記中,例如OnClientClick = "return getConfirmationValue2();"

按鈕標記

<asp:ImageButton ID="btn_submit"   
    runat="server" 
    ImageUrl="~/images/BtnSubmit.png" 
    CausesValidation="true"  
    OnClientClick = "return getConfirmationValue2();" <== Added code here   
    onclick="btn_submit_click"/>

僅在兩次單擊按鈕時,它才會生成警報框。 有什么問題嗎?

第一次單擊時綁定了OnClientClick ,因此您不會在第一次單擊時得到警告框。

如果您想在CodeBehind中register它,建議您使用Control.Init事件或Page_Load事件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM