Get URL Parameters Using Javascript
Post date: Apr 9, 2011 1:12:39 PM
Most of the server-side programming languages that I know of like PHP, ASP, or JSP give you easy access to parameters in the query string of a URL. Javascript does not give you easy access. With javascript you must write your own function to parse the window.location.href value to get the query string parameters you want. Here is a small function I wrote that will parse the window.location.href value and return the value for the parameter you specify. It does this using javascript's built in regular expressions. Here is the function:
function getURLParameters(name) {
name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
var regexS= "[\\?&]" + name + "=([^&#]*)";
var regex =new RegExp(regexS);
var results= regex.exec(window.location.href);
if(results == null) { return ""; } else{ return results[1];
} }
The way that the function is used is fairly simple. Let's say you have the following URL:
http://www.foo.com/index.html?bob=123&frank=321&tom=213#top
You want to get the value from the frank parameter so you call the javascript function as follows:
var frank_param =getURLParameters( 'frank' );
Now if you look at the frank_param variable it contains the number 321. The query string was parsed by the regular expression and the value of the frank parameter was retrieved. The function is smart in a couple of ways. For example, if you have an anchor in your URL like our example URL above does (#top) the gup() function knows to stop before the # character. Also, if a requested parameter doesn't exist in the query string then an empty string is returned instead of a null.
This function has worked very well for my query string parsing needs and should work well for you.
-Courtesy http://www.netlobo.com