如何通过ASP.NET显示弹出对话框并获取弹出窗口的值

时间:2010-11-03 14:51:48

标签: c# asp.net ajax

所以这就是我想要做的,我有一个Web应用程序删除数据库中的物理文件和文件记录。我试图找到一种方法来提示用户,如果物理文件丢失,他们是否要删除数据库中的记录...

使用ASP.NET,这里是我被卡住的地方......

protected void gridViewDeletingRow(...) {
  // get the row to delete
  bool bdelete = deleteFile();

  if(bdelete)
     deleteRecordinDB();
     ScriptManager.RegisterStartupScript(Page, typeof(Page), Guid.NewGuid().ToString(), "javascript:alert('Document deleted successfully!');", true);
  else 
     ScriptManager.RegisterStartupScript(Page, typeof(Page), Guid.NewGuid().ToString(), "javascript:if(!fnConfirmDeleteRecord()){return false};", true);
     // i wanted to able to get the fnConfirmDeleteRecord value back here 
     // so that i can delete the file ... 
     // is there a way to do that?
   }

有没有办法从弹出窗口中获取值?

感谢 丹尼尔

2 个答案:

答案 0 :(得分:1)

创建一个提示用户确认删除的Aspx。

通过您选择的任何方式在新标签/浏览器/窗口中打开它。

这篇文章完美地解答了你的问题:

eggheadcafe.com

答案 1 :(得分:0)

您可以在删除按钮的OnClientClick事件中添加javascript确认。如果其中包含删除的列不是模板列,则必须将其转换为一列,以便您可以访问按钮控制标记。

有可能在不转换为模板列的情况下执行此操作,但您可能需要跳过几个箍来查找删除按钮并插入代码。

<asp:LinkButton ID="DeleteButton" runat="server" CausesValidation="False" CommandName="Delete" Text="Delete" OnClientClick="return confirm('Are you certain you want to delete this item?');"> </asp:LinkButton>