Wicket:从内部表单访问字段

Wicket: access field from inner form

我有一个具有这种结构的 Wicket 页面:

<form wicket:id="generalForm" method="post" class="form_recherche">
        <input value="" type="text" wicket:id="myField_1" />

        <form wicket:id="innerForm" method="post">
                <input value="" type="text" wicket:id="myField_2"/>
                <input type="submit" class="button-classic" wicket:id="accept_2"/>
        </form>

        <input type="submit" class="button-classic" wicket:id="accept_1" /> 

</form>

1 个外部形式和 1 个内部形式。每人一个领域。事实是当"accept_2"按钮被点击时,字段"myField_1"并没有被提交到服务器(只有"myField_2"被提交)。事实上,我需要 "field_1" 字段来进行一些验证。

我错过了什么,为什么 "myField_1" 没有在服务器上填写 为什么 "accept_2" 被点击了?

您需要将外部表单上的 Form#wantSubmitOnNestedFormSubmit() 覆盖为 return true。通过这种方式,您将告诉 Wicket 您希望在提交其嵌套表单之一时也提交(外部)表单。

您使用了 SO 标签 wicket-1.5wicket-1.6。我不确定此方法是否适用于您的 Wicket 版本。