this bit of javascript:

if (submitButton != null) { s += Wicket.Form.encode(submitButton) + "=1"; }

is needed because we do perform a custom form serialization - really
just constructing the query string - that we submit back to server via
ajax. the multipart handling performs a regular post into a hidden
iframe so the browser performs the serialization - and that should
include the button. what markup is your button attached to?

-igor

On Wed, Sep 9, 2009 at 8:18 PM, Vladimir Kovalyuk <koval...@gmail.com> wrote:
> I added AjaxFallbackButton("Cancel").setDefaultFormProcessing(false) to the
> multipart form and when it is pressed the form is handled as well as the
> button would have defaultFormProcessing=true.
>
> It happens because request parameters does not contain the name of the
> submitting button.
>
> The magic is in the new code in wicket-ajax.js
>
>    // Submits a form using ajax.
>    // This method serializes a form and sends it as POST body.
>    submitForm: function(form, submitButton) {
>        if (this.handleMultipart(form)) {
>            return true;
>        }
>        var body = function() {
>            var s = Wicket.Form.serialize(form);
>            if (submitButton != null) {
>                s += Wicket.Form.encode(submitButton) + "=1";
>            }
>            return s;
>        }
>        return this.request.post(body);
>    },
>
> I believe the problem is caused by handleMultipart(form) invocation.
> submitForm function accepts submitButton parameter but does not passes it to
> handleMultipart function.
>
> Igor could you clarify that?
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org

Reply via email to