我在PHP文件中有一个表单,我希望将其包含在其他页面的iframe中的各种其他文件中。在某些情况下,表单目标应为_top
,但在其他情况下_blank
。所以在我看来,我应该能够在一个单独的PHP文件中设置目标,然后在该文件中包含包含该表单的PHP文件。基于我在网上找到的东西(我在这里是新手),在我看来,像
<script type-"text-javascript">
document.getElementsByTagName('form').target = "_top";
</script>
应该能够做到这一点。但这不起作用 - 目标只是默认并在iframe中打开。是否有一些简单的方法来实现这一目标?
答案 0 :(得分: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>
可用/呈现在页面上之后,必须执行其中任何一项。因此,这意味着在<{1}}之后<{1}}或<form>
事件内部,将此代码字面上
参考:
答案 1 :(得分:1)
由于您使用的是PHP文件来调用表单的PHP文件,为什么不设置变量?
form.php的:
<form target="<?php echo $target; ?>">
parent.php:
<?php
$target="_top";
include "form.php";
?>
some_other.php:
<?php
$target="_blank";
include "form.php";
?>
现在我真正的建议是将你的表单变成一个函数(例如 - outputForm),这样你就可以在需要表单的每个PHP文件的顶部做一个include_once并调用outputForm(“_ blank”)你需要表格。