有没有办法在子页面中确定后面的代码是由父页面的window.open()javascript命令打开的?
弹出页面包含一个用户控件,该控件由未通过window.open()命令生成的其他页面使用,我想在用户完成任务后动态添加关闭页面的功能子页面。
这是一个ASP.NET C#3.5应用程序。
答案 0 :(得分:5)
你可以通过查询字符串中的标志来指示窗口的生成位置吗?
答案 1 :(得分:3)
在javascript中你可以检查window.opener是否为null
答案 2 :(得分:1)
对子窗口的请求可能会有一个指向父页面的HTTP Referer
(引用者)标头。您可以在后端检查,或在客户端检查window.opener
。
答案 3 :(得分:0)
可能是错的,但我认为没有简单的直接方法可以做到这一点。您可以随时尝试从不同的网址中识别它,例如“MyChildForm.aspx?从= winopen”
- 编辑 - 被Galwegian击败
答案 4 :(得分:0)
您可以在usercontrol中添加一些javascript来测试window.opener是否为非null,并在此基础上隐藏或显示关闭页面UI。