在iFrame中提交的表单会加载到同一iframe中,而不会加载到子参数中

时间:2014-02-08 11:19:27

标签: javascript html forms iframe target

我创建了一个脚本,将表单提交给iFrame(download.php):

<?php 
//Download.php
echo '<form id="secret" action="http://location.com" target="hidden" method="post">
<!--- There are some input hiddens -->
</form>';
echo '<iframe name="hidden"></iframe>';
echo "<script>
     window.onload = function() {
         secretsend();
         var form = document.getElementById('secret');
         form.onsubmit = function() {
              alert('TEST2');
         }
     }


     function parentsub() 
     {
         parent.document.getElementById('google').submit();
     }
     function secretsend() 
     {
         alert('TEST');
         document.getElementById('secret').submit();
     }
</script>";
?>

这样可行,但是当加载secretsend()时,表单会将其提交到主页面(正如我之前所说的那样是iFrame)而不是hidden iFrame,(初始表单会更改其src到http://location.com/,表格的动作网址)...我该如何解决这个问题?

我需要调用另一个名为parentsub()的函数,但是如果更换主内容则无法调用任何内容。

1 个答案:

答案 0 :(得分:0)

尝试使用此代码。

echo '<form id="secret" action="http://location.com" target="_self" method="post">

目标:_self属性在同一帧中打开链接的文档。