如何在perl中使用Window-target(重定向或其他方式)

时间:2015-01-06 03:16:14

标签: perl

我已经在互联网上查找了这个问题的答案并且没有找到可行的选项..我试图将用户重定向到同一个窗口中的一个单独的框架(称为输出),这样当用户单击提交按钮,它会在另一个框架中加载页面。我找到了两种不同的方法来做到这一点。然而,两种解决方案仅将当前帧重定向到所需位置(对于测试,该位置是www.yahoo.com)。以下是我的两个解决方案:

#!/usr/bin/perl -Tw

print "Location: http://www.yahoo.com/\n";
print "Window-target: output\n\n";

接下来是:

#!/usr/bin/perl -Tw

use CGI;
my $q = CGI->new;


$q->redirect(
  -location => 'http://www.yahoo.com/',
  -Window-target => 'output',
);

我从这些网站上了解了Window-target的想法:

http://www.perlmonks.org/?node_id=805235

http://www.perlmonks.org/?node_id=169691

还有其他人,但由于声誉低于10,我只能发布2。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

忽略这些网站。 Window-Target标头实际上并不存在 - 它从未标准化,并且大多数(如果有的话)主要网络浏览器都不支持。

Mozilla attempted to implement it around 2000,但看起来实现从未正常运行,the broken code was removed shortly thereafter。我链接的错误中的评论表明除了Netscape Navigator之外没有任何浏览器曾经实现过此标题,因此它已经有效地存在了很长时间。

如果您希望将表单提交到特定框架,请在表单元素上使用target属性,例如

<form method="POST" action="blah.cgi" target="output">