使用javascript打开弹出窗口

Roo*_*omy 23 javascript

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

到目前为止我所拥有的第二个替换第一个并且首先重新创建页面.

我认为这需要更多澄清,所以,

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

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

Ume*_*esh 49

在两个不同的调用中更改窗口名称:

function popitup(url,windowName) {
       newwindow=window.open(url,windowName,'height=200,width=150');
       if (window.focus) {newwindow.focus()}
       return false;
     }
Run Code Online (Sandbox Code Playgroud)

当您使用相同的URL打开一个新窗口时,windowName必须是唯一的,否则将刷新相同的窗口.


San*_*hra 12

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

<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>
Run Code Online (Sandbox Code Playgroud)

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

  <a href="popupex.html" onclick="return popitup('popupex.html')">Link to popup</a>
Run Code Online (Sandbox Code Playgroud)

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


Wol*_*olf 7

第一点是 - 从可用性角度来看,显示多个弹出窗口是不可取的。

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

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()}
}
Run Code Online (Sandbox Code Playgroud)

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

更新:

因此,我建议在 test.aspx 页面中创建一个新选项卡来显示报告,而不是替换图像内容并放置 pdf。