0

这就是我需要的:

<form>
   input field
   <form>
       input field
       submit
   </form>
   input field
   input field
   <form>
       input field
       submit
   </form>
   submit
</form>

我需要表格中的表格,因为我使用 transloadit 将文件上传到我的亚马逊存储桶。它们的工作方式如下:

<form id="MyForm" action="http://example.org/upload" enctype="multipart/form-data" method="POST">
  <input type="file" name="my_file" />
  <input type="submit" value="Upload">
</form>

所以我需要一个带有表单元素的整体表单来提交,而其他表单的提交方式不同。但我不能在表格中放置表格.. 我该怎么做?

4

2 回答 2

2

表单中不能有表单

如果您需要触发“formlet”提交(例如您的 transloadit 示例),我建议您使用 Javascript 来执行此操作,尽管我猜 Transloadit 有一种机制可以执行您正在尝试的任何事情(如果您在您的问题我也许可以提出一种具体的方法)。

于 2013-10-28T22:18:53.597 回答
0

您可以使用 form 属性来指定输入属于哪个表单。例如:

  <form id="form2" action="/download.html"  method="POST"></form>
  <form id="form1" action="/upload.html" method="POST">

    <input type="file" name="my_file" form="form1" />
    <input type="submit" value="Upload" form="form1">


    <input type="text" name="my_file" form="form2" />
    <input type="submit" value="Download" form="form2">

  </form>

这应该可以解决您的问题,但并非所有浏览器都支持 form 属性,并且您实际上不能将表单元素嵌套在彼此内部。像 Chrome 这样的浏览器会删除子表单元素,这就是为什么第二个表单元素在第一个表单元素之外的原因,但您可以将所有字段放在一个表单元素中。

在此处阅读有关表单属性的更多信息: http ://www.impressivewebs.com/html5-form-attribute/

不要做出判断,虽然我觉得这很有趣,但这是一件非常奇怪的事情。

于 2014-12-05T15:07:35.130 回答