使用javascript打开弹出窗口

时间:2013-01-16 05:11:52

标签: javascript

我希望在两个不同的弹出窗口中同时打开一个aspx页面(test.aspx)。

我现在所拥有的第二个替换第一个并且首先重新创建页面。

我认为这需要更多澄清,

Basicaly我创建一个图表并将其放在test.aspx中, 并将该图保存为图像文件。 我在test.aspx上放了一个按钮,该按钮与stimulsoft报告相关联,该报告显示该图像的pdf格式。 现在,如果我用test.aspx打开它,它将替换图像页面。但我希望同时看到图表和PDF格式。 一个解决方案是我创建一个新的空白aspx页面来显示报告,但我尝试避免添加新页面,因为可以在test.aspx上挂载报告。

问题只是在同一时间打开两个POPUP窗口,但可能是有效的。每个弹出窗口都包含自己的动态控件和报告,如mrt。

3 个答案:

答案 0 :(得分:43)

更改两个不同来电中的窗口名称:

function popitup(url,windowName) {
       newwindow=window.open(url,windowName,'height=200,width=150');
       if (window.focus) {newwindow.focus()}
       return false;
     }
当您使用相同的URL打开一个新窗口时,

windowName必须是唯一的,否则将刷新相同的窗口。

答案 1 :(得分:10)

要创建弹出窗口,您需要以下脚本:

<script language="javascript" type="text/javascript">

function popitup(url) {
newwindow=window.open(url,'name','height=200,width=150');
if (window.focus) {newwindow.focus()}
return false;
}


</script>

然后,您通过以下方式链接到它:

  <a href="popupex.html" onclick="return popitup('popupex.html')">Link to popup</a>

如果您需要,您也可以直接从document.ready调用该函数。或者也许来自其他功能。

答案 2 :(得分:3)

第一点是 - 显示多个弹出窗口在可用性方面是不可取的。

但是你可以通过使用多个弹出名称来实现它

var newwindow;
function createPop(url, name)
{    
   newwindow=window.open(url,name,'width=560,height=340,toolbar=0,menubar=0,location=0');  
   if (window.focus) {newwindow.focus()}
}

更好的方法将在两个不同的iFrame或Div中的单个页面中显示。

<强>更新

所以我建议在test.aspx页面中创建一个新标签来显示报告,而不是替换图像内容并放置pdf。