The PIT
Röster från ITM-koncernen.

Hämta Querystrings med Javascript

September 19, 2008 11:06 by Christoffer Munkestam

Nu på förmiddagen så var jag i behov av att hämta ner data från en querystring till en javascriptfunktion. Jag tror aldrig tidigare att jag faktiskt stött på det problemet. Hur som helst så började jag fundera över hur man gjorde, i brist på svar från tomtarna i mitt huvud så googlade jag. Förvånande nog så verkar det inte finnas något inbyggt i javascript för att hantera enskilda nycklar i querystrings, utan man kan tydligen bara plocka ner alltihop för att sedan själv grotta runt med stränghantering för att få ut det man vill ha.

Hittade ganska många riktigt dåliga försök att hantera det där vettigt i javascript. Det loopades genom strängar till höger och vänster, splittades och bökades runt. Precis när jag höll på att ge upp och istället själv sätta mig för att bygga en vettig funktion baserad på regular expressions så hittade jag en som är helt i min smak, så jag tänkte att jag passar på att ge den lite mer uppmärksamhet om det är fler som stöter på behovet i framtiden.

function getQuerystring(key, default_)
{
  if (default_==null) default_=""; 
  key = key.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regex = new RegExp("[\\?&]"+key+"=([^&#]*)");
  var qs = regex.exec(window.location.href);
  if(qs == null)
    return default_;
  else
    return qs[1];
} 

Källa: http://www.bloggingdeveloper.com/post/JavaScript-QueryString-ParseGet-QueryString-with-Client-Side-JavaScript.aspx


Tags:
Categories: Programmering | Javascript
Actions: E-mail | Permalink | Comments (2) | Comment RSSRSS comment feed

Comments