2012-01-09 106 views
0

我可以动态地将行添加到Wicket中的表中。但是,一旦表单被提交,新创建的行就会消失。我想重复使用这些行进行多次提交。是这样的可能吗?当试图找到解决方案时,我找到了方法ListView.setReuseItems(true)。所做的就是保留下一次提交的原始行的值,但新创建的行仍然被删除。谢谢!我可以使用Wicket动态添加永久行吗?

+2

你能展示一些代码吗?您需要将新行添加到表的后备列表中。 – bert 2012-01-09 22:25:31

回答

1

由于您没有发布任何代码,我只是假设您目前正在手动更改组件层次结构,以添加新行。

更好的方法是从底层模型对象生成表。只要您的模型旨在保持请求之间的状态,表的整个状态就会安全地存储在会话中。这样,为了添加一个新行,你需要做的就是将它添加到模型对象中,并使表格再次呈现(例如,通过Ajax或页面刷新)。

但是,要处理大量的数据,在会话中存储所有内容并不是一个好主意。在这种情况下,您需要更复杂的模型,以尽可能降低内存占用。但总的想法仍然一样:模型处理数据和组件的演示。