在asp.net c#中获取返回的确认popbox值
本文关键字:确认 popbox 返回 获取 asp net | 更新日期: 2023-09-27 17:55:02
如何获得在确认框中按下的值?
<script type = "text/javascript" language = "javascript">
function confirm_proceed()
{
if (confirm("Are you sure you want to proceed?")==true)
return true;
else
return false;
}
</script>
c# Button2.Attributes.Add("onclick", "return confirm_proceed();");
如果这是唯一具有此行为的按钮,请试试这个
Button2.Attributes.Add("onclick", "return confirm('Are you sure you want to proceed?')");
它是内联的,看起来很简单,但如果你有多个这样做的控件,那么你原来的方法将很容易维护。
原始函数可以压缩为
<script type = "text/javascript" language = "javascript">
function confirm_proceed()
{
return confirm("Are you sure you want to proceed?");
}
</script>
可以将confirm_proceed()
的值存储在asp:HiddenField
中
你可以这样修改你的脚本:
<script type = "text/javascript" language = "javascript">
function confirm_proceed()
{
var hiddenField = document.getElementById('hiddenFieldId');
if (confirm("Are you sure you want to proceed?")==true)
{
hiddenField.value = 'true';
return true;
}
else
{
hiddenField.value = 'false';
return false;
}
}
</script>
你现在可以在你的Button2_Click
事件中首先访问隐藏字段的值
我在一个实际的生产项目中遇到了类似的问题,我用以下方法解决了它:
<asp:Button ID="btn1" runat="server" OnClick="Button1_Click" onClientClick="return confirm('Are you sure you want to proceed?')"/>
所以OnClientClick Client事件在onClick server事件之前被触发,所以如果用户点击OK,那么Client事件从确认对话框返回True,因此这个按钮后面的代码被执行,另一方面,如果用户点击(取消或否),那么它将返回false,因此后面的代码不会被期望(服务器事件被取消)
希望它能帮助你,因为我真的把它应用到我的项目中,没有任何问题。