Html 将表单添加到表行

Html 将表单添加到表行,html,forms,w3c-validation,tablerow,Html,Forms,W3c Validation,Tablerow,向表行添加表单的有效方法(如果有)是什么 我有以下情况: <table> <tr> <td><input type="text" name="q"></td> <td><input type="text" name="a"></td> <td><input type="submit" name="submit" value="Submit"><

向表行添加表单的有效方法(如果有)是什么

我有以下情况:

<table>
  <tr>
    <td><input type="text" name="q"></td>
    <td><input type="text" name="a"></td>
    <td><input type="submit" name="submit" value="Submit"></td>
  </tr>
  <tr>
    <td><input type="text" name="q"></td>
    <td><input type="text" name="a"></td>
    <td><input type="submit" name="submit" value="Submit"></td>
  </tr>
  <tr>
    <td><input type="text" name="q"></td>
    <td><input type="text" name="a"></td>
    <td><input type="submit" name="submit" value="Submit"></td>
  </tr>
</table>

如何添加表单元素并仍然具有有效的HTML

<table>
  <form>
    <tr>
      <td><input type="text" name="q"></td>
      <td><input type="text" name="a"></td>
      <td><input type="submit" name="submit" value="Submit"></td>
    </tr>
  </form>
</table>


无效(至少我认为是这样)

表格和表单在HTML中是独立的概念。人们有时会把它们相互混淆。概念上的混乱常常伴随着混乱的标记。另一方面,表格和表格在某种意义上可以“混合”。具体来说,您可以将表放在表单中,反之亦然,这样做通常很有用。但是你需要明白你在做什么

表和表单可以以任何一种方式嵌套。但如果将表单放入表中,则每个表单必须完全包含在单个表单元格中(实际上是一个TD元素)。因此,每种形式都是完全独立的

AFAIK使用表格来格式化表单是有效的


    <form action="/" name="form1">
<table>
  <tr>
    <td><input type="text" name="q"></td>
    <td><input type="text" name="a"></td>
    <td><input type="submit" name="submit" value="Submit"></td>
  </tr>
  <tr>
    <td><input type="text" name="q"></td>
    <td><input type="text" name="a"></td>
    <td><input type="submit" name="submit" value="Submit"></td>
  </tr>
  <tr>
    <td><input type="text" name="q"></td>
    <td><input type="text" name="a"></td>
    <td><input type="submit" name="submit" value="Submit"></td>
  </tr>
</table>

    </form>


......

将表格包装在表单元素中:

<form action="/" name="form1">
  <table>...</table>
</form>

...

但更好的是:如果可能的话,在不使用表格的情况下创建表单。

对不起,问题的格式搞砸了。我对问题中的表有哪些选项?首先,HTML无效,因为您没有关闭标记。它应该是这样的:您是在问将标记放在哪里,还是可以在单个表中包含multime元素?您应该将标记放在表的外面。@Igor–它不是XHTML。斜杠不是必需的(在HTML4中是完全错误的)@Igor:self-closing标记是def。HTMLdo不需要为每一行添加一个新的表格吗?为什么我不想使用表格来处理表格数据?在您的特定示例中,将表格包装到表单中是可以的。另一方面,您可能会丢失信息,或者您的用户可能会感到困惑,因为如果他们一次输入多行,这些数据将丢失!我已经设置了一个演示页面,向您展示您的问题:
<form action="/" name="form1">
  <table>...</table>
</form>