我有一个EventDetails.aspx页面,其中包含可由我的用户使用我的Timetable.aspx页面中的Window.Open()打开的事件的详细信息。在EventDetails.aspx页面我有一个按钮,可以让我再使用如下代码关闭窗口:如何判断我的页面是否使用Window.Open()打开
protected void CloseWindow_Click(object sender, EventArgs eventArgs)
{
Response.Write("<script language='javascript'>window.open('','_self');window.close();</script>");
}
当我打开我的窗口,从Timetable.aspx页面关闭窗口Window.Open()按钮工作正常,但是如果我独立导航到EventDetails.aspx页面,我无法使用关闭窗口按钮 - 没有任何反应!
有没有一种方法可以确定用户是否使用Window.Open()进行了导航,以便可以更改我的按钮的可见性,或者更好,还有另一种方法可以关闭不依赖于我的选项卡使用Window.Open()?
当您使用'window.open'打开时,您可以在查询字符串中传递一个参数。如果您在加载EventDetails页面时发现它,就知道它已经以这种方式打开。 – ConnorsFan
检查'window.opener'的值,它将包含对打开弹出窗口的窗口的引用 – dman2306
@ConnorsFan我可能会尝试,但我想象我会有类似的问题,即。如果用户在使用Window.Open()打开页面之后对url进行书签标记,然后再尝试返回包含查询字符串的url。 – Claire