【问题标题】:What elements can I put inside of a form?我可以在表单中放入哪些元素?
【发布时间】:2014-03-13 16:19:30
【问题描述】:

和类似的东西

<form>
   <input ...../>
   <div>
      <input ...../>
   </div>
</form>

有效吗?

更新

我遇到了麻烦,因为我一直在用表格包装表格行,据我所知,由于表格规范而不是表格规范,它是无效的,所以我想知道是否可以将表格包装在其他非表相关元素。

我有多行,每一行都有由列分隔的有效输入,如果我将整个表格包装在一个表单中,每一行的输入都将被提交。我可以在没有 javascript 的情况下完成我想要的吗?因此,当我单击保存时,我会提交带有隐藏输入的表单,告诉我要在数据库中更新哪个调查。

【问题讨论】:

  • 表格行只能有一个表格作为父级,不能有一个表格。
  • 请原谅 dvorak 的胡言乱语 :)
  • 标题中问题的答案相当简单(“它取决于 HTML 版本,请参阅规范”)。真正的问题似乎有所不同,但应该在其真实的上下文中进行描述,并带有描述性的标题。

标签: html forms


【解决方案1】:

每个元素都有可以使用的有效子元素。

您几乎可以将任何您喜欢的内容放入表单中,但不能放入表格中。 表的结构更受限制,您必须遵循。

您可以用 1 个表单包裹整个表格并提交所有表格,然后提取您需要的详细信息,而不是用表格包装表格行,

或在每行中放置一个带有表格的单元格,然后有一个新的表格或列表来对齐您的控件。

类似的东西:

<table>
            <tr>
                <td>
                    <form>
                    <table>
                        <tr>
                            <td>
                            </td>
                            <td>
                            </td>
                            <td>
                            </td>
                        </tr>
                    </table>
                    </form>
                </td>
            </tr>
        </table>

【讨论】:

  • 我会接受这个作为答案,因为您回答了原始问题。然而;我已经添加了更多。
  • 好吧,基本上你误解了 html 上下文,你没有用表单包装元素,你把元素放在表单中。它不同,因为每个元素都有有效的子元素,而不是有效的父元素,所以你不能用表格包装表格元素,因为这会导致表格成为表格的直接子元素,这是不允许的。但是,表单接受所有元素,因此您可以在其中放入任何内容。
  • 答案显然是错误的。说您可以按照规范或实践将 anything 放入表单中肯定是不正确的。例如,如果您尝试将 form 元素嵌套在 form 元素中,则会出现语法错误并且可能会产生严重影响。
  • 你是对的,但我说的一般只是为了回答这个问题。不过,我已经根据您的建议更新了我的答案,谢谢。
猜你喜欢
  • 1970-01-01
  • 2012-09-20
  • 2011-11-14
  • 2010-09-17
  • 2011-03-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-08
相关资源
最近更新 更多