asp.net 后台添加confirm 判断确认
时间: 2023-07-29 16:13:28 浏览: 174
在 ASP.NET 后台代码中,可以使用 JavaScript 的 confirm() 函数来实现确认操作的判断。具体步骤如下:
1. 在后台代码中,编写需要进行确认操作的按钮或链接的点击事件:
```csharp
protected void btnDelete_Click(object sender, EventArgs e)
{
// 弹出确认框
string confirmScript = "return confirm('确定要删除该记录吗?');";
Page.ClientScript.RegisterStartupScript(this.GetType(), "confirmDelete", confirmScript, true);
// 执行删除操作
DeleteRecord();
}
```
2. 注册客户端脚本,调用 confirm() 函数,弹出确认框。这里使用了 Page.ClientScript.RegisterStartupScript() 方法,将 confirm() 函数的调用代码注册到页面的头部,确保在页面加载完毕时被执行。
3. 如果用户点击了确认按钮,则 confirm() 函数的返回值为 true,继续执行删除操作。否则,返回值为 false,取消删除操作。
```csharp
private void DeleteRecord()
{
// 判断用户是否确认删除
if (Page.ClientScript.IsStartupScriptRegistered(this.GetType(), "confirmDelete") &&
!Page.ClientScript.IsStartupScriptRegistered(this.GetType(), "confirmDeleteExecuted"))
{
string confirmScript = "if (!confirm('确定要删除该记录吗?')) { return false; }";
Page.ClientScript.RegisterStartupScript(this.GetType(), "confirmDeleteExecuted", confirmScript, true);
}
else
{
// 执行删除操作
// ...
}
}
```
4. 在执行删除操作前,再次判断用户是否确认删除。这里使用了 Page.ClientScript.IsStartupScriptRegistered() 方法,判断 confirm() 函数的调用代码是否已经被注册。如果已经注册,则说明用户已经点击了确认按钮,执行删除操作。如果未注册,则说明用户还没有进行确认操作,返回 false,取消删除操作。
需要注意的是,如果页面中有多个需要进行确认操作的按钮或链接,必须为每个操作分别注册不同的客户端脚本,并使用不同的注册 key。同时,需要在执行删除操作前,判断每个操作对应的客户端脚本是否已经被注册。
阅读全文