在 iframe 中双重提交值表单
Posted
技术标签:
【中文标题】在 iframe 中双重提交值表单【英文标题】:Double submit a value form in iframe 【发布时间】:2014-08-29 13:03:42 【问题描述】:我想在框架中双重提交一个值表单,如下所示。
index.php
<form action="iframe1.php" method="post" target="iframe1">
<input type="text" name="lala">
<input type="submit">
</form>
<iframe name="iframe1" src="iframe1.php"></iframe>
iframe1.php
<form action="foo.php" method="post">
<button type="submit" name="lili" value="'.$_POST['lala'].'"></button>
</form>
foo.php
<?php echo $_POST'lili']; ?>
使用上面的代码可以成功地从 index.php 向 iframe1.php 提交一个值,但是 iframe1.php 不提交给 foo.php。它停止到 iframe1.php。那么如何让 iframe1.php 在值不为空时提交,否则如果值为空,则不执行任何操作。
【问题讨论】:
为什么表单会自动提交?我想我不知道你在问什么,除了听起来你需要验证。 是的,这和验证一样,如果值为空,则什么也不做提交。你知道怎么用 javascript 做这个吗? 【参考方案1】:自动提交需要 iframe1.php 中的一些 javascript。
index.php
<form action="iframe1.php" method="post" target="iframe1">
<input type="text" name="lala">
<input type="submit">
</form>
<iframe name="iframe1" src="iframe1.php"></iframe>
iframe1.php
<?php if(isset($_POST['lala'])):?>
<form action="foo.php" method="post" id="form2">
<input type="hidden" name="lili" value="<?php echo $_POST['lala']; ?>" />
</form>
<script type="text/javascript">
document.getElementById('form2').submit();
</script>
<?php else:?>
<div>Nonthing posted</div>
<?php endif;?>
foo.php
<?php echo $_POST['lili']; ?>
【讨论】:
如果你可以使用上面的代码,它工作正常。我改变了一些有语法错误的东西以上是关于在 iframe 中双重提交值表单的主要内容,如果未能解决你的问题,请参考以下文章