ASP.Net& jQuery - 关闭弹出窗口

时间:2009-09-28 15:20:17

标签: c# asp.net shadowbox clientscriptmanager

我想在用户点击按钮时关闭ShadowBox弹出窗口。弹出窗口在Iframe中显示单独的页面。 这适用于取消按钮控件上的客户端事件,例如

OnClientClick="javascript:parent.Shadowbox.close();"

然而,Ok按钮有一个服务器端事件,因为需要保存数据。当我从上面定义OnClick和OnClientClick处理程序时,IFrame将关闭,服务器端事件处理程序永远不会触发。

我尝试从标记中删除OnClientClick事件处理程序,并使用ClientScriptManager来完成此操作,如

Page.ClientScript.RegisterStartupScript(this.GetType(),
  "Close", "parent.Shadowbox.close();", true);

显然因为按钮位于UpdatePanel中,脚本没有注册,并且它没有出现在Reponse流中。 IPanel保持开放状态。

我该怎么做?

1 个答案:

答案 0 :(得分:1)

当您使用MS AJAX控件时,需要使用ScriptManager注册脚本,而不是ClientScript