Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/401.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ApacheWicket中分为选项卡的表单_Java_Ajax_Forms_Tabs_Wicket - Fatal编程技术网

Java ApacheWicket中分为选项卡的表单

Java ApacheWicket中分为选项卡的表单,java,ajax,forms,tabs,wicket,Java,Ajax,Forms,Tabs,Wicket,我正在做一个项目,需要将页面上的表单划分并放入单独的选项卡中。ApacheWicket有一个非常好的简单的方法来自己做选项卡(TabbedPanel类),但我担心的是,这个解决方案依赖于AJAX来加载面板的内容,因此在用户按下“提交”按钮后,表单的唯一一部分将被提交 我为简单的CSS/JS选项卡()找到了一个解决方案,但我觉得使用第三方解决方案很不方便,而且这会使我的项目变得复杂(另外,我对许可证也不确定) 我该怎么办?这听起来很像一个向导。由于wicket提供了处理此类用例的方法,因此这可能是

我正在做一个项目,需要将页面上的表单划分并放入单独的选项卡中。ApacheWicket有一个非常好的简单的方法来自己做选项卡(TabbedPanel类),但我担心的是,这个解决方案依赖于AJAX来加载面板的内容,因此在用户按下“提交”按钮后,表单的唯一一部分将被提交

我为简单的CSS/JS选项卡()找到了一个解决方案,但我觉得使用第三方解决方案很不方便,而且这会使我的项目变得复杂(另外,我对许可证也不确定)


我该怎么办?

这听起来很像一个向导。由于wicket提供了处理此类用例的方法,因此这可能是一个值得关注的问题。由于我还没有使用过这个组件,我不知道它可以显示多大的选项卡,但如果不能,它至少可以让您了解如何使用选项卡构建自己的选项卡。

默认选项卡面板不使用AJAX。要使用Ajax,有一个自己的实现(AjaxTabbedPanel)。

有几个完全基于JS/CSS的带有JQuery的TabbedPanel的impl。
请参阅wicketstuff的jquery集成项目和WiQuery项目。

但这仍然意味着不同选项卡上的组件将在不同的请求中提交。@McGregor-没错!-我试过AjaxTabbedPanel和TabbedPanel。同样的结果。向导可能值得一看,但在选项卡中有明确的要求。@DoktorNo选项卡应该通过覆盖受保护的
组件newButtonBar(最终字符串id)来轻松实现
来自Wizard,并提供自己的
org.apache.wicket.extensions.Wizard.IDefaultButtonProvider实现,用于构建选项卡(可能会隐藏向导中最初找到的其他按钮)。听起来不错,但“真实”选项卡允许用户快速转到表单的特定部分,而无需查看其他面板,就像在向导中一样。@DoktorNo这就是为什么你应该实现你自己的ButtonBar和你选项卡上的所有按钮。我在我的问题中的链接中尝试了CSS/JS解决方案,到目前为止,它是最可行的。不需要额外的Java编码,这正是我需要的。谢谢你的提示,但我选择了非基于jQuery的CSS/JS解决方案。不过,您关于jQuery与Wicket集成的提示对我未来的项目很有价值。:)