我们是否可以在另一种形式中有一种形式?有什么问题吗?
当前回答
不,我们不能像这样在另一个表单中嵌套表单
<form name='form1'>
<form name='form2'>
//some code here
</form>
</form>
它在某些情况下可以工作,但不建议用于通用平台。您可以在单个表单中使用大量SUBMIT按钮,但不能适当地管理嵌套表单。
其他回答
另一种解决方法是启动一个包含自己表单的模态窗口
是的,有。这是错误的。这行不通,因为这是错误的。大多数浏览器只能看到一个表单。
http://www.w3.org/MarkUp/html3/forms.html
不,我们不能像这样在另一个表单中嵌套表单
<form name='form1'>
<form name='form2'>
//some code here
</form>
</form>
它在某些情况下可以工作,但不建议用于通用平台。您可以在单个表单中使用大量SUBMIT按钮,但不能适当地管理嵌套表单。
表单嵌套可以通过新的HTML5输入元素的Form属性实现。虽然我们没有在结构上嵌套表单,但输入是按它们自己的形式计算的。在我的测试中,除了IE(IE11),有3个主要浏览器支持这个功能。表单嵌套限制是HTML UI设计的一大障碍。
这是一个示例代码,当你点击保存按钮,你应该看到“2 3成功”(原始http://www.impressivewebs.com/html5-form-attribute/):
<form id="saveForm" action="/post/dispatch/save" method="post"></form>
<form id="deleteForm" action="/post/dispatch/delete" method="post"></form>
<div id="toolbar">
<input type="text" name="foo" form="saveForm" />
<input type="hidden" value="some_id" form="deleteForm" />
<input type="text" name="foo2" id="foo2" form="saveForm" value="success" />
<input type="submit" name="save" value="Save" form="saveForm" onclick="alert(document.getElementById('deleteForm').elements.length + ' ' + document.getElementById('saveForm').elements.length + ' ' + document.getElementById('saveForm').elements['foo2'].value);return false;" />
<input type="submit" name="delete" value="Delete" form="deleteForm" />
<a href="/home/index">Cancel</a>
</div>
不。HTML明确禁止嵌套表单。
从HTML 5草案:
内容模型: 流内容,但没有表单元素后代。
来自HTML 4.01推荐:
<!元素表单-- (%block;|SCRIPT)+ -(FORM)——交互表单-->
(注意-(FORM)部分)。