我们有一个类似的AjaxButton:
add(new AjaxButton("ajax-cancel-button", form) {
private static final long serialVersionUID = 839803820502260006L;
@Override
protected void updateAjaxAttributes(AjaxRequestAttributes attributes) {
super.updateAjaxAttributes(attributes);
attributes.getAjaxCallListeners().add(new ConfirmCallListener(833L));
}
@Override
protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
// repaint the feedback panel so that it is hidden
target.add(feedback);
// DO ACTION
}
});
ConfirmCallListener看起来像这样:
public class ConfirmCallListener extends AjaxCallListener {
private static final long serialVersionUID = 7355235720213137963L;
public ConfirmCallListener(long id) {
onPrecondition("if (!confirm('Do you want this')) {"
+ js + "; return false;}");
}
}
我现在想要的是当用户在确认对话框中按“取消”时捕获JavaScript事件(NOT Ok)。当用户按下“OK”时,我可以捕捉到该事件。但是我想对“取消”事件作出反应(因为当用户按下取消时某些加载栏应该消失)。
如何捕获确认框的取消事件?
谢谢! 塞巴斯蒂安