Github user solomax commented on a diff in the pull request:
https://github.com/apache/wicket/pull/256#discussion_r161221858
--- Diff:
wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-jquery.js
---
@@ -658,23 +653,36 @@
var scName = attrs.sc;
data = data.concat({name: scName,
value: 1});
}
-
} else if (attrs.c && !jQuery.isWindow(attrs.c)) {
// serialize just the form component with id ==
attrs.c
var el = Wicket.$(attrs.c);
data =
data.concat(Wicket.Form.serializeElement(el, attrs.sr));
}
- // convert to URL encoded string
- data = jQuery.param(data);
+ var wwwFormUrlEncoded = undefined; // default
+ if (attrs.mp) {
+ try {
+ var formData = new FormData();
+ for (var i = 0; i < data.length; i++) {
+ formData.append(data[i].name,
data[i].value);
+ }
+
+ data = formData;
+ wwwFormUrlEncoded = false;
+ } catch (exception) {
+ Wicket.Log.error("Ajax multipat not
supported:" + exception);
+ }
+ }
// execute the request
var jqXHR = jQuery.ajax({
url: attrs.u,
type: attrs.m,
context: self,
+ processData: wwwFormUrlEncoded,
+ contentType: wwwFormUrlEncoded,
--- End diff --
According to the http://api.jquery.com/jquery.ajax/
`contentType` can be string (should be `real` content type) or boolean
Are you sure `undefined` is OK here?
---