2017-03-11 26 views
-1

以下のコードは、Asp.Netでyesのnoで確認メッセージボックスを実行します。
確認済みかどうかを確認する必要があります。
どうすればいいですか?メッセージボックスが正常に動作しないことを確認します。

ASPX

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <title></title> 
    <script type = "text/javascript"> 
     function Confirm() { 
      var confirm_value = document.createElement("INPUT"); 
      confirm_value.type = "hidden"; 
      confirm_value.name = "confirm_value"; 
      if (confirm("Do you want to save data?")) { 
       confirm_value.value = "Yes"; 
      } else { 
       confirm_value.value = "No"; 
      } 
      document.forms[0].appendChild(confirm_value); 
     } 
    </script> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <asp:Button ID="btnConfirm" runat="server" OnClick = "OnConfirm" Text = "Raise Confirm" OnClientClick = "Confirm()"/> 
    </form> 
</body> 
</html> 

の背後にあるコード:

protected void OnConfirm(object sender, EventArgs e) 
{ 
    // This method runs even though the user clicks no. 
} 

更新
このコードで 、両方yesまたはno選択がOnConfirmという名前の同じメソッドを実行します。 したがって、私はOnConfirmメソッドonly if the user clicks yesを実行しようとします。

+0

は、[私はここに解決策を見つけました]( http://stackoverflow.com/a/9835475/1136253) –

答えて

0

更新:

runat = serverで非表示フィールドを使用し、yes/noを保存することができます。サーバーに送信します。

<input type="hidden" runat="server" value="" id="hidden1" /> 


function Confirm() { 

     if (confirm("Do you want to save data?")) { 
      confirm_value.value = "Yes"; 
      document.getElementById("hidden1").value = "yes"; 
     } else { 
      confirm_value.value = "No"; 
      document.getElementById("hidden1").value = "no"; 
     } 
     document.forms[0].appendChild(confirm_value); 
    } 

マスターページを使用する場合、非表示のクライアントIDがサーバーIDと異なることに注意してください。

protected void OnConfirm(object sender, EventArgs e) 
{ 
    string confirmValue = hidden1.Value;  
} 
+0

私の更新を見てください。 –

0

あなたがしたいことは、ユーザーがOKを正しければサーバーサイドボタンを実行するだけだと思いますか?はい、そしてちょうどこの操作を行う場合はJavaScript関数がfalseを返したときに、基本的には、サーバー側のボタンは起動しませんすなわち:(OnClientClick =「リターン確認()」)

<script type = "text/javascript"> 
     function Confirm() {   
      return confirm("Do you want to save data?"); 
     } 
    </script> 


    <asp:Button ID="btnConfirm" runat="server" OnClick = "OnConfirm" Text = "Raise Confirm" OnClientClick = "return Confirm()"/> 
関連する問題