我是Wicket框架的新手,所以我不知道这是否可能。我希望当我单击表单的提交按钮(在 Java 中是 AjaxButton )时弹出 javascript 确认对话框,但是当我单击"否"时,它总是调用此按钮的 onSubmit 方法。我做错了什么?
这是我的代码:
AjaxButton submit;
add(submit = new AjaxButton("ajaxSubmitProduct"){
private static final long serialVersionUID = 1L;
@Override
protected void onComponentTag(ComponentTag tag)
{
super.onComponentTag(tag);
tag.put("onclick", "return confirm('Yes or No?');");
}
@Override
protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
target.add(form);
Product p = (Product) form.getModelObject();
DBBroker.save_product(p);
success("You have sucessfully added a new product.");
}
@Override
protected void onError(AjaxRequestTarget target, Form<?> form)
{
target.add(form);
}
});
你应该使用 Ajax 前提条件:
https://cwiki.apache.org/confluence/display/WICKET/Getting+user+confirmation
或者使用ModalWindow
,如果你不喜欢Javascript confirm()
外观和感觉(谁喜欢?;)
例如,请参阅此处:
http://mysticcoders.com/blog/wicket-ajax-confirmation-modal-window/