L'oggetto location
possiede la proprietà search
che contiene tutti i parametri di una query string GET. Possiamo usare jQuery per convertire tali parametri in un oggetto.
Possiamo definire la seguente funzione di utility:
$.getQueryParameters = function( s ) {
if ( typeof s == "undefined" ) {
s = location.search;
}
var parts = s.substr( s.indexOf( "?" ) + 1 ).split( "&" );
var result = {};
for ( var i = 0; i < parts.length; i++ ) {
var tmp = parts[i].split( "=", 2 );
var key = decodeURIComponent( tmp[0] );
var value = decodeURIComponent( tmp[1] );
if ( key in result ) {
result[key].push( value );
} else {
result[key] = value;
}
}
return result;
};
Quindi se la nostra query string è ?foo=bar&baz=test
avremo:
var queryObj = $.getQueryParameters();
console.log( queryObj );
// { foo: "bar", baz: "test" }