繁体   English   中英

ASP.NET Ajax:Ajax调用后关闭窗口吗?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM