如何制作确认框?

时间:2011-12-16 13:43:44

标签: c# asp.net

我想从c#代码而不是JavaScript中显示一个确认框。 当以下条件为真时,有什么方法可以弹出确认框吗?

以下是目前的代码:

if (items.SelectedNode.ChildNodes.Count >= 1)
{
    ScriptManager.RegisterStartupScript(this.nav_tree_items, typeof(string), "Alert", "alert('Hello');", true);
}

我已经尝试过add.attributes,但这不起作用。

我也尝试过以下操作,但是点击取消它无论如何都会执行操作:

if (items.SelectedNode.ChildNodes.Count >= 1)
{
    ScriptManager.RegisterStartupScript(this.nav_tree_items, typeof(string), "Confirm", "Confirm('Hello');", true);
}

8 个答案:

答案 0 :(得分:1)

试试这个:

if (items.SelectedNode.ChildNodes.Count >= 1)
{
    ScriptManager.RegisterStartupScript(this.nav_tree_items, typeof(string), "Confirm", "return Confirm('Hello');", true);
}

获取确认功能的返回值以取消或继续。

更新1:

或使用ASP.NET Ajax Toolkit Confirm Button

答案 1 :(得分:0)

您可以尝试添加confirm框,但点击ok/cancel按钮后应采取适当的措施。

if (items.SelectedNode.ChildNodes.Count >= 1)
   {
   ScriptManager.RegisterStartupScript(this.nav_tree_items, typeof(string), "Alert", 
      @"var conrimationFlag; conrimationFlag = confirm('Your confirmation 
      message goes here!'); 
      /* now, take proper action here based on the 
      value of variable conrimationFlag */ ", true);
   }

感谢。

答案 2 :(得分:0)

if (items.SelectedNode.ChildNodes.Count >= 1)
{
    Page.ClientScript.RegisterStartupScript(typeof(YourPage), "alert", "<script>alert('Hello')</script>");
}

编辑:

页面中的

<script>
function ConfirmAlert()
{
   var result = confirm('Hello');
   if (result)
   {
      //click ok button
      //do something
   }
   else
   {
      //click cancel button
      //do something
   }
}
</script>

背后的代码

if (items.SelectedNode.ChildNodes.Count >= 1)
{
    Page.ClientScript.RegisterStartupScript(typeof(YourPage), "ConfirmAlert", "<script>ConfirmAlert()</script>");
}

答案 3 :(得分:0)

看一下这个例子

<script type="text/javascript">
<!--
function confirmation() {
    var answer = confirm("Do you want to exit...?")
    if (answer){
        alert("Bye bye!")
        window.location = "http://www.google.com/";
    }
    else{
        alert("Thank you very much Come Again!")
    }
}
//-->
</script>
</head>
<body>
<form>
<input type="button" onclick="confirmation()" value="Do you want to leaave">

答案 4 :(得分:0)

http://msdn.microsoft.com/en-us/library/bb310408.aspx

了解ScriptManager

尝试一下,

ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "KEY", "alert('hello')", true);

答案 5 :(得分:0)

尝试这个

if (items.SelectedNode.ChildNodes.Count >= 1)
{

String _scriptAuthor1 = "javascript:$(function () { " +
                        " return (confirm('Are you sure you want to delete ?')) });";
nav_tree_items.Attributes.Add("onClick", _scriptAuthor1);
}

答案 6 :(得分:0)

您可以使用OnClientClick的{​​{1}}属性。

采取以下示例:

asp:Button

答案 7 :(得分:-1)

而不是用JavaScript做它用C#做...!

DialogResult dialogResult = MessageBox.Show("Are you shure?", "Some Title", MessageBoxButtons.YesNo);

if(dialogResult == DialogResult.Yes)
{
//do something
}
else if (dialogResult == DialogResult.No)
{
//do something else
}