*
* (String) url - The URL of the page to request.
*
- * (String) data - A string of data to be sent to the server (POST only).
+ * (String) data - Data to be sent to the server. If converted to a query
+ * string, if not already a string. Is appended to the url for GET-requests.
*
* (String) dataType - The type of data that you're expecting back from
* the server (e.g. "xml", "html", "script", or "json").
error: null,
dataType: null,
data: null,
- url: null,
+ url: null
}, s);
// if data available
if ( s.data ) {
// convert data if not already a string
if (typeof s.data != 'string')
- s.data = jQuery.param(s.data)
+ s.data = jQuery.param(s.data);
// append data to url for get requests
if( s.type.toLowerCase() == "get" )
// "?" + data or "&" + data (in case there are already params)
// Otherwise, assume that it's an object of key/value pairs
} else {
// Serialize the key/values
- for ( var j in a )
- s.push( j + "=" + encodeURIComponent( a[j] ) );
+ for ( var j in a ) {
+ //if one value is array then treat each array value in part
+ if (typeof a[j] == 'object') {
+ for (var k = 0; k < a[j].length; k++) {
+ s.push( j + "[]=" + encodeURIComponent( a[j][k] ) );
+ }
+ } else {
+ s.push( j + "=" + encodeURIComponent( a[j] ) );
+ }
}
// Return the resulting serialization