javascript - 如何使用 header 在 PHP 中打开新的两个选项卡

标签 javascript php header

我正在尝试使用 Php 打开一个新选项卡,

header("location:print_register.php?recpt_no=".$recpt_no);

像这样我需要打开新的两个选项卡

header("location:print_register.php?recpt_no=".$recpt_no);

header("location:print_generate.php?recpt_no=".$recpt_no);

它需要打开新的两个选项卡并传递值

最佳答案

无法指定一个窗口作为选项卡打开。它是作为新选项卡还是新窗口打开完全取决于浏览器及其配置。查看这些情况的最佳方法是不区分选项卡和窗口并从那里继续。

话虽如此,正如其他人已经提到的,不可能通过 PHP 打开新窗口。 header() 函数只会重定向当前窗口。您需要通过标准链接来实现此操作

<a href="http://www.google.com/" target="_new" />

或 JavaScript

window.open('http://www.google.com/');

在您的特定情况下,您想要启动两个,因此您可以通过组合两个来实现此目的(假设您可以使用链接)

<a href="http://www.google.com/" target="_new" onclick="javascript:window.open('http://www.stackoverflow.com/')" />

或通过 JavaScript 启动两者。下面是一个示例,允许您将目标地址存储在数组中并启动它们:

window.onload = function() {
    var links = new Array('http://www.google.com/', 'http://www.stackoverflow.com/');
    for(var i = 0; i < links.length; i++) {
        window.open(links[i]);
    }
}

链接不需要是绝对的,因此您可以使用相对路径,例如 ./print_register.php?recpt_no=

现在,由于您从 PHP 中提取了部分地址,所以事情变得有点复杂,但也不会复杂太多。基本上,您只需要使用 PHP 来完成渲染的 JavaScript:

<?php
    $recpt_no = 'RN426762';
?>
<html>
    <head>
        <script>
            window.onload = function() {
                var links = new Array('./print_register.php?recpt_no=<?php echo $recpt_no; ?>', 'http://www.stackoverflow.com/');
                for(var i = 0; i < links.length; i++) {
                    window.open(links[i]);
                }
            }
        </script>
    </head>
    <body>
        ...
    </body>
</html>

您不需要将整个脚本放入 PHP echo 中。相反,请正常编写代码并在需要的地方echo PHP 变量。它将使 PHP 端的代码更加简洁,并对性能有所帮助,但可能并不明显。

我希望这有帮助。 ^^

JSFiddle

关于javascript - 如何使用 header 在 PHP 中打开新的两个选项卡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28174370/

相关文章:

javascript - jquery 使用 .after() 在表中添加行

javascript - 使用javascript将一组对象转换为一组新的对象?

php - 在 php printf 函数中更改表的颜色时发生错误

image - JavaMail 时尚邮件

c - 如何使用多个源文件和头文件

javascript - 如何在angularjs中传递选择选项值

javascript - Node.js 从 Javascript 代码内的 MySQL 查询返回 [object Object]

php - 通过 IMAP 删除 GMail 聊天记录

php - 在 Windows 上连接到 MySQL 时数组索引会更改大小写,但在 Linux 上则不会

regex - 使用 nginx proxy_pass 修改 Location header