asp.net 弹出确认窗口
本文关键字:确认 窗口 net asp | 更新日期: 2023-09-27 18:36:02
我需要在删除按钮中添加一个"您确定吗"弹出窗口,但我不确定如何获取用户是单击了"确定"还是"取消"。
这是我的做法:
string message = "Are you sure you want to delete this user?";
System.Text.StringBuilder sb = new System.Text.StringBuilder();
sb.Append("return confirm('");
sb.Append(message);
sb.Append("');");
Type type = this.GetType();
ClientScript.RegisterOnSubmitStatement(type, "alert", sb.ToString());
您可以将 OnClientClick 按钮设置为:
return confirm("Are you sure you want to delete this user?");
然后,如果用户未单击"确定",则不会发生提交/回发。
最简单的
方法是将其添加到您的<input type="button|submit|reset" />
或<button />
html标记(取消时不提交):OnClick="if(!confirm('Are you sure?')) return false;"
将事件重命名为 OnClientClick
以便<asp:Button />
- 它与 CausesValidation="True"
和/或 UseSubmitBehavior="False"
兼容,因为它在 html 标记中被添加到它们之前。
如果您使用的是 ajax 控件工具包,只需使用 confirmextender
如果你想知道用户点击的按钮试试这个
在 Web 表单中添加隐藏字段
并使用它来设置用户单击"确定"时的值
sb.Append("if (confirm(").Append(msg).Append("))")
.Append("document.getElementById('")
.Append(confirmResult.ClientID)
.Append("').value = 'ok';");
在代码隐藏中读取 confirmResult 的值以了解用户是否单击了"确定"或"取消"
我同意上述答案,但如果您不想混合使用服务器和客户端代码/事件,那么我建议您使用 AjaxToolKit 确认按钮 http://bit.ly/NtmpOT