Skip to content

Instantly share code, notes, and snippets.

@alkos333
Created February 8, 2012 17:52
Show Gist options
  • Star 27 You must be signed in to star a gist
  • Fork 8 You must be signed in to fork a gist
  • Save alkos333/1771618 to your computer and use it in GitHub Desktop.
Save alkos333/1771618 to your computer and use it in GitHub Desktop.
Read URL GET variable
// Given a query string "?to=email&why=because&first=John&Last=smith"
// getUrlVar("to") will return "email"
// getUrlVar("last") will return "smith"
// Slightly more concise and improved version based on http://www.jquery4u.com/snippets/url-parameters-jquery/
function getUrlVar(key){
var result = new RegExp(key + "=([^&]*)", "i").exec(window.location.search);
return result && unescape(result[1]) || "";
}
// To convert it to a jQuery plug-in, you could try something like this:
(function($){
$.getUrlVar = function(key){
var result = new RegExp(key + "=([^&]*)", "i").exec(window.location.search);
return result && unescape(result[1]) || "";
};
})(jQuery);
@alkos333
Copy link
Author

alkos333 commented Feb 8, 2012

If you would like to get all key/value pairs at once, use a variation of this function by Ashley Ford: http://papermashup.com/read-url-get-variables-withjavascript/

@loktar00
Copy link

loktar00 commented Oct 6, 2012

Nice elegant, thanks.

@kevinfilteau
Copy link

I replaced unescape with decodeURIComponent to support utf-8 htmlentities characters.

@luckman212
Copy link

Wonderful. Thank you!

@jv5000
Copy link

jv5000 commented Jan 16, 2015

I'm new to this so I apologize if this is obvious to some....

But how do I call getUrlVar(key) and use the result in another link
on my html page?

For example: http://FirstUrl.com/?id=123456

I need to extract the id (123456) from the First Url and use that
in my Second Url so the link is Clickable.

href=http://SecondUrl.com/?id=123456

Any help gratefully accepted, it's driving me nuts!!!

@jammin804
Copy link

Thank you! THANK YOU! This helped me so much!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment