【问题标题】:Child page hides after opening from main page从主页面打开后子页面隐藏
【发布时间】:2013-04-17 12:03:47
【问题描述】:

在 ASP.NET Web 应用程序中,有一个主窗口(Default.aspx 或主页)和一个子窗口(一个新的 aspx 页面)。当我在按钮上使用 javascript 打开子页面时,通过指定其 url 使用 window.open() 方法单击。 按钮单击事件上的 C# 代码:

protected void BtnChildPage_Clicked(object sender, ImageClickEventArgs e)
    {
        System.Text.StringBuilder sb = new System.Text.StringBuilder();
        sb.Append(@"<script language='javascript'>");
        sb.Append(@"OpenChildPage('" + sQueryString + "')");
        sb.Append(@"</script>");

        //register startup script with button
        ScriptManager.RegisterStartupScript(BtnPartMemo, this.GetType(), sScriptName, sb.ToString(), false);
    }

打开子页面的Javascript代码:

var childmWindow;
function OpenChildPage(sQueryString) {

    var width = 655;
    var height = 508;
    var left = (screen.width - width) / 2;
    var top = (screen.height - height) / 2;
    var params = 'width=' + width + ', height=' + height;
    params += ', top=' + top + ', left=' + left;
    params += ', directories=no';
    params += ', location=no';
    params += ', menubar=no';
    params += ', resizable=yes';
    params += ', scrollbars=yes';
    params += ', status=yes';
    params += ', toolbar=no';
    childmWindow = window.open('DirectoryName/ChildPage.aspx' + '?ViewerId=' + sQueryString,
                                'Child Page' + sViewerId, params);
    childmWindow.focus();

}

子窗口不会出现在主窗口前面。我在调用 window.open() 方法后尝试了 window.focus() 但它在打开后隐藏了子窗口。

仅在使用 Win XP 在 IIS 5.1 中部署应用程序后才会观察到此行为。 当我从代码中执行它时,它会相应地运行,但是在 IIS 中部署后,它会在打开后隐藏子窗口。

如何克服这种行为?

【问题讨论】:

  • 贴出你的代码,否则没人能判断答案。
  • 问题已用代码更新。

标签: c# javascript asp.net visual-studio-2008 iis


【解决方案1】:

据我了解,您需要在主页前的小窗口中打开子窗口吗? 如果这是正确的,那么这应该会有所帮助:

window.open('DirectoryName/ChildPage.aspx','_blank', params);

如果'_blank' 可以工作,但由于某种原因你需要“'Child Page' + sViewerId”,那么

window.open('DirectoryName/ChildPage.aspx','_blank'+'Child Page' + sViewerId, params);

应该先用_blank,不然不行(一开始想评论但不知为什么不能评论,希望对你有帮助)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-08
    • 2016-08-10
    • 1970-01-01
    • 2020-06-16
    相关资源
    最近更新 更多