[英]ASP.NET Ajax: close window after Ajax call?
我正在使用ASP.NET Ajax。 服务器调用完成后如何告诉浏览器关闭当前窗口 (服务器端代码)?
我设法在服务器方法(在按钮单击处理程序内部)中使用ASP.NET Ajax的ScriptManager方法“ RegisterDataItem”来做到这一点:
sm.RegisterDataItem(ActionLabel, "action:closewindow")
和一个隐藏的Label并以这种方式在客户端上处理:
function PageLoadingHandler(sender, args)
{
var dataItems = args.get_dataItems();
if (dataItems['ActionLabel'] == 'action:closewindow') {
window.close()
}
}
Sys.WebForms.PageRequestManager.getInstance().add_pageLoading(PageLoadingHandler);
但是感觉很脏 。 必须有一种更优雅的方法来执行此操作。
感谢您的任何建议。
如果我没window.close()
,在事件处理程序上使用ScriptManagers
RegisterStartupScript
方法注册window.close()
应该可以。 有关使用ScriptManager.RegisterStartupScript
详细信息,请参见MSDN。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.