次のような 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 イベントをキャッチすることです (OK ではありません)。ユーザーが「OK」を押したときにイベントをキャッチできます。しかし、「キャンセル」イベントにも反応したいです(ユーザーがキャンセルを押すと、ロードバーが消えるはずです)。
確認ボックスのキャンセル イベントをキャッチするにはどうすればよいですか?
ありがとう!セバスチャン