0

我在 PHP 文件中有一个表单,我想将它包含在其他各种文件中,这些文件将在其他页面的 iframe 中。在某些情况下,表单目标应该是_top但在其他情况下_blank。所以在我看来,我应该能够在一个单独的 PHP 文件中设置目标,然后在该文件中包含包含表单的 PHP 文件。根据我在网上找到的东西(我是这里的新手),在我看来,这很简单

<script type-"text-javascript">
document.getElementsByTagName('form').target = "_top";
</script>

应该能够做到这一点。但这不起作用——目标只是默认设置并在 iframe 中打开。有没有一些简单的方法来实现这个目标?

4

2 回答 2

1

getElementsByTagName返回一个集合。循环遍历它,或者只是[0]用来获取第一个......然后设置target属性:

document.getElementsByTagName('form')[0].target = "_top";

或者

var forms = document.getElementsByTagName('form');
for (var i = 0; i < forms.length; i++) {
    forms[i].target = "_top";
}

请注意,其中任何一个都必须在页面上可用/呈现执行。<form>所以这意味着将这段代码放在事件的后面<form>或内部。window.onload

参考:

于 2013-05-10T18:42:29.890 回答
1

既然您使用 PHP 文件来调用表单的 PHP 文件,为什么不直接设置一个变量呢?

表格.php:

<form target="<?php echo $target; ?>">

父.php:

<?php
$target="_top";
include "form.php";
?>

some_other.php:

<?php
$target="_blank";
include "form.php";
?>

现在我真正的建议是将您的表单变成一个函数(例如 - outputForm),以便您可以在每个需要表单的 PHP 文件的顶部执行 include_once 并在您需要的地方调用 outputForm("_blank")形式。

于 2013-05-10T18:49:02.553 回答