如何轻松链接Wicket的AjaxFormComponentUpdatingBehaviors,使单个Javascript事件可以触发多个行为。我正在使用Wicket 1.4。
例如,当onblur
事件发生时,我喜欢触发这两种行为。我只是关心触发onUpdate()
方法。如果我这样做,似乎只有一种行为会被触发。实现这一点的一种方法是使用一个同时执行a和B操作的行为,但我正在寻找更可组合的东西。
field.add(new AjaxFormComponentUpdatingBehavior("onblur") {
protected void onUpdate(AjaxRequestTarget target) {
// do thing A here
getComponent(); // behaviors need a reference to field they are attached to
}
});
field.add(new AjaxFormComponentUpdatingBehavior("onblur") {
protected void onUpdate(AjaxRequestTarget target) {
// do thing B here
}
});
Wicket 6.0将支持此功能。但这不是一个好的做法,因为这样你会有两个请求被一个接一个地执行。我建议有一种行为来做A和B。