2012-07-20 24 views

Respuesta

417
function getURLParameter(name) { 
    return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.search) || [null, ''])[1].replace(/\+/g, '%20')) || null; 
} 

lo que puede utilizar:

myvar = getURLParameter('myvar'); 
+1

Gracias por una gran respuesta. Se le agregó una edición para tener en cuenta el caso límite de parámetros sin valores. – nicolaslara

+3

@DeanMeehan increíble si "simplemente funciona", pero no diría que es una solución simple teniendo en cuenta la legibilidad de las expresiones regulares –

+3

¿Funciona esto si hay una etiqueta hash en el URI? Si hay un '# algo' en Chrome, entonces tiene que usar' window.location.hash' en lugar de 'window.location.search' ... –

Cuestiones relacionadas