我想在用户点击按钮时关闭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保持开放状态。
我该怎么做?
答案 0 :(得分:1)
当您使用MS AJAX控件时,需要使用ScriptManager
注册脚本,而不是ClientScript
。