我在另一个表单中添加表单时不提交

时间:2011-02-21 17:08:44

标签: php html

我的页面中有这个结构。次要形式工作,主要没有。当我删除辅助,然后MAIN工作。我想将它们都保留在这个结构中,因为我结束了我的代码。有没有办法管理它?谢谢!

<form name="main" action="result.php" method="post">
. // this form submits some results to result.php
.
. 
<form name="secondary" ........>
.
. //this is an ajax form that uploads an image to the server
</form>
.
.
.
<input button>
</form>

1 个答案:

答案 0 :(得分:5)

不可能,抱歉:无效的标记 - HTML表单不允许嵌套。如果不方便,我很抱歉;就目前而言,这只会在不同的浏览器中以各种有趣的方式打破,绝对不会达到您的目的。

从更积极的方面说明:你想要的最终目标是可以实现的,尽管方式不同:

  • 以一种形式进行图像和表格处理(不方便,我承认)
  • 将“内部形式”作为IFRAME
  • 通过AJAX发送“内部表单”:
    • “内部表单”不是<form>,也许只是<fieldset>
    • 它有一个输入按钮,它启动一个JS方法,通过AJAX从“内部表单”发送数据
    • “外形”是实际<form>;在提交之前,它会清除“内部表单”的内容,因此“内部表单”字段不会以“外部表单”提交
    • 这将在没有JavaScript的情况下中断
  • 在“外部形式”HTML之外有“内部形式”,用CSS定位它们(​​因此它看起来是“外部”和“内部”,当它实际上是“形式#1”和“形式#2”时) - 正如@Kau-Boy在评论中所建议的那样
    • 这可能在屏幕阅读器等方面看起来很奇怪,但这将是最简洁的方法IMO