2009-07-22 16 views
10

Possibili duplicati:
JavaScript query string
get querystring with jQueryJQuery stringa di query di attraversamento

C'è un oggetto/metodo in javascript per trasformare una stringa come questa: "param1 = 2 & param2 = 1 & param3 = 5 "in una sorta di dizionario, in modo da poter fare riferimento a ciascun elemento come mystring ['param1'] o mystring [0]?

Può jQuery aiuto qui?

+0

See: http://stackoverflow.com/questions/901115/get-querystring-with-jquery – Shog9

+1

anche: http: //stackoverflow.com/questions/647259/javascript-query-string – Shog9

+0

Oh, e: http://stackoverflow.com/questions/150404/what-is-the-easiest-way-to-read-manipulate-query- string-params-using-javascript – Shog9

risposta

8

questo è il mio tentativo.

var a = 'param1=2&param2=1&param3=5'; 
var b = a.split('&'); 
var final ={}; 
$.each(b, function(x,y){ 
    var temp = y.split('='); 
    final[temp[0]] = temp[1]; 
}); 
console.log(final); 

Ciò restituisce un oggetto come il dizionario che avevi bisogno:

{ 
    param1 : "2", 
    param2 : "1", 
    param3 : "5", 
} 
+1

Perfetto. Grazie. – niaher

2

C'è un plugin per questo. http://plugins.jquery.com/project/query-object - Si può giocare con una demo online di esso a: http://test.blairmitchelmore.com/jquery.query/?name=jonathan&age=26

C'è anche jqUrl, che consente di chiamare gli elementi formano la stringa di query come questa:

$.jqURL.get('var2'); 
+0

Mentre questo è ciò di cui ho bisogno, penso che il plugin sia un overkill per una così semplice problema. – niaher

+0

Ciò dipenderebbe dalla dimensione del plugin. Questi non sono grandi. – Sampson

Problemi correlati