2016-11-16 118 views
0

我有下面的代码JavaScript文件,多个窗口打开在Windows.open

var windo = window.open("", ""); 
windo.document.write("sdhfsdfsfsdkjks image"); 

在点击我上面的代码执行按钮。但它打开了2个新选项卡,其中一个包含内容'sdhfsdfsfsdkjks image',这是预期的,而在另一个选项卡中,它将打开包含上面代码的父页面。因此,任何人都有一个想法,为什么它在新标签中再次打开父页面。

+0

因为你在一审第二 – thatOneGuy

+0

调用它,你又可以分享更多的代码,点击事件等 –

回答

1

好像你需要将te窗口缓存在一个全局变量中,它是特定于浏览器的(如果以后调用相同名称打开,浏览器可能会用新窗口替换现有窗口。它,一些浏览器(IE)打开新窗口)。

您是否想过不需要window.open而是用Ajax调用替换这个div内容的解决方案?

var mywindow; 
function openFile() { 
    if (typeof mywindow == "undefined") { 
     mywindow = open("", "_blank"); 
    } 
    mywindow.document.write("sdhfsdfsfsdkjks image"); 
} 

http://javascript.info/tutorial/popup-windows

+0

我尝试添加名称和网址,但仍然是同样的问题。 – dnyaneshwar

+0

请显示问题的最小工作代码。然后我可以多说这个问题 – lordkain

+0

这是代码, 函数openFile()var windo = window.open(“/ Scheduled.aspx”,“Scheduled”); windo.document.write(“sdhfsdfsfsdkjks image”); } $(“#btnOpen”)。click(openFile) – dnyaneshwar

0

我缺少的代码

返回FALSE;

当我在锚定标记中调用上面的openFile()方法时。这是原因,它是开放的额外tab.Below工作代码,

<a onclick="openFile();return false;" href="#"> 
function openFile() { 
if (typeof mywindow == "undefined") { 
    mywindow = open("", "_blank"); 
} 
    mywindow.document.write("sdhfsdfsfsdkjks image"); 
}