JavaScript has nothing built in for handling query string parameters.
You could access location.search
, which would give you from the ? character on to the end of the fragment identifer (#foo), whichever came first.
This suggests that you have written (or found some third party) code for reading the query string and accessing just the bit that you want - but you haven't shared it with us, so it is hard to say what is wrong with it.
The code I generally use is this:
var QueryString = function () {
// This function is anonymous, is executed immediately and
// the return value is assigned to QueryString!
var query_string = {};
var query = window.location.search.substring(1);
var vars = query.split("&");
for (var i=0;i<vars.length;i++) {
var pair = vars[i].split("=");
// If first entry with this name
if (typeof query_string[pair[0]] === "undefined") {
query_string[pair[0]] = pair[1];
// If second entry with this name
} else if (typeof query_string[pair[0]] === "string") {
var arr = [ query_string[pair[0]], pair[1] ];
query_string[pair[0]] = arr;
// If third or later entry with this name
} else {
query_string[pair[0]].push(pair[1]);
}
}
return query_string;
} ();
You can then access QueryString.c