首页 > 解决方案 > 在 IE 11 中使用 java 脚本打开多个选项卡,但 UrlReferrer 不等于 null

问题描述

关于这个有几个问题和答案,但没有一个对我有用。它是 IE 11,chrome 当然可以正常工作,只需 window.open(url)。

我只能打开一个选项卡,而不是几个(它们是由一段迭代的 js 代码打开的)。

for (var i = 0; i < reports.length; i++)
{
    url = "./Report/?reportName=" + reportName;
    url += "&id=" + "@Model.Header.ID";
    ShowInMultipleTabs(url, i);
}

我需要 UrlReferrer 不为空,因为它用于我们的应用程序安全性。

一种有效的解决方案,即解决空 urlReferrer 问题,但只打开一个新标签;

function ShowInMultipleTabs(url, tabCounter)
{
    if ((url !== undefined) && (url !== ''))
    {
        var link = document.createElement('a');
        link.href = url;
        link.target = "_about";
        document.body.appendChild(link);
        link.setAttribute("id", "'" + tabCounter + "'");
        link.click();
    }
}

我怎样才能让它显示所有选项卡?

谢谢

标签: javascripturltabsinternet-explorer-11

解决方案


特殊目标名称_blank用于在新选项卡或窗口中打开链接。如果您使用其他一些不称为特殊键的字符串(如_about您的代码中所示),则将其作为窗口名称处理。当命名的窗口/选项卡尚未打开时,将打开一个新窗口/选项卡。否则标签将被重用。

还可以考虑使用 ajax 方法。


推荐阅读