【问题标题】:ASP.NET Ajax: close window after Ajax call?ASP.NET Ajax:Ajax 调用后关闭窗口?
【发布时间】:2008-10-30 14:55:27
【问题描述】:

我正在使用 ASP.NET Ajax。服务器调用完成后如何告诉浏览器关闭当前窗口(服务器端代码)?

我设法在服务器方法(在按钮单击处理程序内)中使用 ASP.NET Ajax 的 ScriptManager 方法“RegisterDataItem”:

sm.RegisterDataItem(ActionLabel, "action:closewindow")

还有一个隐藏的标签并在客户端以这种方式处理它:

function PageLoadingHandler(sender, args)
{
    var dataItems = args.get_dataItems();
    if (dataItems['ActionLabel'] == 'action:closewindow') {
        window.close()
    }
}
Sys.WebForms.PageRequestManager.getInstance().add_pageLoading(PageLoadingHandler);

但感觉。必须有更优雅的方式来做到这一点。

感谢您的建议。

【问题讨论】:

    标签: asp.net javascript asp.net-ajax


    【解决方案1】:

    如果我理解正确,在事件处理程序上使用 ScriptManagers RegisterStartupScript 方法注册 window.close() 应该可以工作。有关使用ScriptManager.RegisterStartupScript 的详细信息,请参阅MSDN

    【讨论】:

    • 啊!是的,这行得通。非常感谢!我确定我以前试过这个。
    猜你喜欢
    • 1970-01-01
    • 2017-04-11
    • 1970-01-01
    • 1970-01-01
    • 2012-05-06
    • 1970-01-01
    • 2016-01-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多