31

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

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

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

基本上我创建了一个图形并将其放在 test.aspx 中,然后将该图形保存为图像文件。我在 test.aspx 上放了一个按钮,它与 stimulsoft 报告链接,该报告显示该图像的 pdf 格式。现在,如果我用 test.aspx 打开它会替换图像页面。但我想同时查看图形和pdf。一种解决方案是我创建一个新的空白 aspx 页面来显示报告,但我尽量避免添加新页面,因为可以在 test.aspx 上安装报告。

问题只是同时打开一个 POPUP 窗口两次,但它可能是否可行。并且每个弹出窗口都包含自己的动态控件和报告,例如 mrt。

4

3 回答 3

60

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

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

当您打开具有相同 url 的新窗口时,windowName 必须是唯一的,否则将刷新相同的窗口。

于 2013-01-16T06:02:33.190 回答
13

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

<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 调用该函数。或者也许来自另一个功能。

于 2013-01-16T05:36:21.307 回答
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()}
}

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

更新:

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

于 2013-01-16T06:15:48.807 回答