Wicket 中的嵌套表单:表单 "breaks"

Nested forms in Wicket: form "breaks"

根据此 wiki 条目:

Nested Forms

Wicket 应该支持嵌套表单。 但是,当我尝试使用它们时,一切都崩溃了。

这是我的代码的简化版本:

<form wicket:id="outer">
    <!-- some fields... -->

    <form wicket:id="inner">
        <!-- some fields... -->
    </form>

    <!-- some other fields... -->
</form>

看起来还可以,但是在生成的HTML中输出了内部形式的开始标签:

<form wicket:id="inner">

只是失踪了。完全消失了!

这显然意味着内部 Form 的结束 </form> 标签现在被解释为外部 Form 的结束标签,最后一个 </form> 结束标签不再有相应的开始标签.长话短说:结果 HTML 不正确,它会破坏整个页面。

如何防止内部表单的开始 <form ...> 标签消失?

内表的<form>标签转换为<div>。它的结束标记也应如此。

根据 HTML 规范,将 <form> 嵌套在另一个 <form> 中是无效的!

在将标记传递给 Wicket 之前检查您的标记是否有效。您一定只有一个问题 - 嵌套的 <form>s。解决所有其他问题!