使用aspx DetailsView的插入功能。想要在处理新记录并将其添加到数据库时显示javascript模式弹出窗口。我可以在DetailsView_ItemCommand中挂钩按钮。它不起作用,所以我开始尝试通过简单地显示一个javascript Alert()弹出窗口来弄清楚最新情况。但是,即使工作也无法做到这一点。这是相关的DetailsView_ItemCommand:
protected void DetailsViewInsertFPL_ItemCommand(object sender, DetailsViewCommandEventArgs e)
{
if (e.CommandName == "Insert")
{
ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "waitMessage", "alert('Please wait while your request is processed');", true);
return;
}
}
插入记录后,会有一个重定向到另一个aspx页面。
有人能引导我走上正确的道路吗?我将在旁边查看一些aspx页面和DetailsView属性,看看有没有设置正确的东西。
答案 0 :(得分:0)
你不能使用
ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "waitMessage", "alert('Please wait while your request is processed');", true);
然后是
response.redirect("toanotherpage.aspx");
ScriptManager.RegisterStartupScript将在页面中的所有元素之后(在表单的结束标记之前)呈现脚本,因此当您在同一代码块上使用响应重定向时,不会执行它。
要实现您的目标,您可以执行以下解决方案之一,
window.location
答案 1 :(得分:0)
Alex Kudryashev建议将DetailView包含在asp:UpdatePanel中并使用asp:UpdateProgress显示"请等待您的请求被处理"给了我在这种情况下我需要的解决方案。
不常用户在这里,所以不确定如何给Alex分数,因为他的建议是评论而不是答案。在这种情况下,请随时告诉我如何处理投票。
感谢!!!!我已经把头撞到了墙上几天才让这个工作起来。