检票AjaxButton和javascript条件(Wicket AjaxButton and ja

2019-10-21 07:33发布

我是新与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);
    }

});    

Answer 1:

您应该使用一个Ajax前提条件:

https://cwiki.apache.org/confluence/display/WICKET/Getting+user+confirmation



Answer 2:

或使用ModalWindow ,如果你不喜欢的JavaScript confirm()看起来和感觉(和谁做;)

例如,见这里:

http://mysticcoders.com/blog/wicket-ajax-confirmation-modal-window/



文章来源: Wicket AjaxButton and javascript condition