2009-10-26 21 views

Respuesta

2
(function(){ 

    var url = 'http://mydomain.com/?q=microsoft&p=next' 
    var s = url.search.substring(1).split('&'); 

    if(!s.length) return; 

    window.GET = {}; 

    for(var i = 0; i < s.length; i++) { 

     var parts = s[i].split('='); 

     GET[unescape(parts[0])] = unescape(parts[1]); 

    } 

}()) 

creo que esto funcionará ..

+2

'decodeURIComponent'. 'escape' /' unescape' casi siempre es un error. – bobince

+0

Además, esto NO funcionará si url es una cadena. Dado que utiliza la búsqueda de métodos, supongo que url debe ser window.location. Además de estos dos problemas, parece funcionar bien y la importación de una biblioteca para esta tarea es sin duda una exageración. – fotanus

5

que utilizan la biblioteca parseUri disponible aquí: http://stevenlevithan.com/demo/parseuri/js/

Se le permite hacer exactamente lo que está pidiendo:

var uri = 'http://mydomain.com/?q=microsoft&p=next'; 
var q = uri.queryKey['q']; 
// q = 'microsoft' 
Cuestiones relacionadas