2012-08-08 18 views
0

在我的表单中有一些字段,我需要填充其中的三个,然后才能运行查询来搜索实体并更新表单。
有没有办法在ajax请求中一起发送这些字段,所以我可以使用从客户端发送的值运行查询,并且不要依赖模型上的值?
我这样说是因为我不希望在模型中设置这些值,因为有必需的字段,所以如果用户填充字段并稍后清除之前的值,则wicket将不会更新该值该模型。如何使用Wicket从一个窗体发送多个字段?

回答

1

将它们放入嵌套窗体中,标记为必填项,添加AjaxFormComponentUpdatingBehavior并将字段绑定到临时模型。

在onUpdate方法中检查是否设置了所有3个值,如果它们是,请运行您的查询。

在主窗体的onSubmit中将值从临时模型转移到真实模型。

+0

谢谢@Nicktar。我不知道在wicket中可以使用嵌套窗体,因为在纯HTML中这是禁止的。为了将来的参考,[这是一个很好的链接,说明这是如何可能](http://weblogs.java.net/blog/jjviana/archive/2010/03/30/nested-forms-what-wicket-idea)和[另一个解释如何表单提交工作在这个纪元](http://www.java.net/external?url=http://cwiki.apache.org/WICKET/nested-forms.html)。提交表单我不得不使用AjaxFormSubmitBehavior而不是AjaxFormComponentUpdatingBehavior。 – 2012-08-09 16:40:48

相关问题