LoginSignup
5
6

More than 5 years have passed since last update.

javascriptでGETパラメーターを取り扱う

Last updated at Posted at 2016-02-13

目的

javascriptでGETパラメーターの解析をしましょうというものです。
PHPやJavaは利用できないシーンとかで、パラメーターを引き回したりする時に使っていました。

使い方

下記の関数をまずは用意します。

function getParams(){
    var url = document.location.href;
    if(url.match(/#/)){
        url = RegExp.leftContext;
    }
    if(url.match(/\?/)){
        var params = RegExp.rightContext;
    }else{
        return new Array();
    }
    var tmp = params.split('&');
    var param = new Array();
    var tmp2, key, val;
    for(var i = 0; i < tmp.length; i++){
        tmp2 = new Array();
        key = '';
        val = '';

        tmp2 = tmp[i].split('=');
        key = tmp2[0];
        val = tmp2[1];
        param[key] = val;
    }
    return param;
}

上記の関数を呼ぶことでGETパラメーターの値を簡単に取得できます。

よくリンクにページ内リンクの#がつくことがありますが、その場合はマッチした箇所の左側だけをURLと認識してます。

そのあとで?でsplitしてパラメーター部分を取り分けて、さらに&と=で分割するという処理をしてます。

例えば http://whizzy.co.jp?param1=hoo&param2=bar というようなURLがあります。

そのURLで動かすjavascript内で

var params = getParams();

とすると、paramsという変数に各パラメーターが連想配列で入ってきます。

それ以降は各パラメーターの値にアクセスできます。

alert(params['param1']); // fooが表示される。
alert(params['param2']); // varが表示される。 

もし使えそうな機会があればどうぞ。

5
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
6