我想从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);
}
答案 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
}