使用嵌套的HTML表单,是否可以定位提交时传输哪个内容?

问题描述:

我有另一种形式中的一种形式:使用嵌套的HTML表单,是否可以定位提交时传输哪个内容?

<form id="a"> 
    <form id="b"> 
     <input type="submit"> 

当点击提交按钮,似乎外在形式提交。

有没有一种方法来定位提交表单?

+0

@eggdrop:标记是用于问题而不是人的标记。请让他们独处。谢谢 – SilentGhost 2009-10-14 16:51:24

像其他人所述...嵌套形式AREN” t允许。

但是,这并不意味着一些浏览器不会做这样的事情。在您提供的示例中,浏览器似乎忽略了第二个<form>标记,其方式与忽略未知标记(即<notAValidTag>)的方式类似。由于JavaScript也不允许嵌入表单集合,因此确保FormB信息被提交的最好方法是使其不再是嵌套表单。这将把你的标记和用户界面分成更独特的部分,这也可能从用户体验的角度来看是有益的。

我认为这是不允许的HTML标准。

没有嵌套形式,不支持:

可以有一个单一的文件几种形式,但形式元素不能嵌套。

- http://www.w3.org/MarkUp/html3/forms.html

的HTML DTD特别从含有另一种形式的元件禁止的表格元素:

<!ELEMENT FORM - - (%block;|SCRIPT)+ -(FORM) -- interactive form --> 

http://www.w3.org/TR/html401/interact/forms.html#edef-FORM

在HTML 5中,按照目前的草案,是的。每个输入元素都可以具有属于它的形式的“形式”属性信令。但是,在HTML中嵌套表单仍然无效,HTML解析器不会允许这种情况发生。

但是,可以通过JavaScript构建嵌套表单。在没有表单属性的情况下,用于确定输入属于哪个表单的规则相当复杂,但是在http://www.whatwg.org/specs/web-apps/current-work/multipage/association-of-controls-and-forms.html#association-of-controls-and-forms