JDBな人生  専門的なことから日常的なことまで~ まぁ自由きままに書いていきます。
2017年10月 / 09月<< 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 >>11月

アクセスランキング

[ジャンルランキング]
コンピュータ
329位
アクセスランキングを見る>>

[サブジャンルランキング]
プログラミング
50位
アクセスランキングを見る>>

Java Script でのクエリ文字列の取得

JDBは時々、非同期通信を使ったJava Script(以下JS)でのプログラミングをします。
しかし、getElementByidなどを使ってHTMLを動的に書き換えても、その内容には具体的なURIが存在しません。
URIで指定するには、クエリ文字列で指定する方法がありますが、JSではその機能はないようなので、専用の関数を作ってみました。

ちなみに、print()関数はおまけです。
perlに慣れていると、document.write()は長すぎるので・・・・・。

<script type="text/javascript">
function print(text){
   document.write(text);
}

var qstring;
function analytics_query(){
   var url = location.href;
   var query = new Array();
   query = url.split("?"); 

      if ( !!query[1] ) {
         var querys = new Array();
         querys = query[1].split("&");
         var qcount = querys.length;
         qstring = new Array();
         var temporary_text = new Array();
         var hash_name;
         for(count=0; count<qcount; count++){
               temporary_text = querys[count].split("=");
               hash_name = temporary_text[0];
               qstring[hash_name] = temporary_text[1];
         } 
      } else {
         ;
      }
}
analytics_query();
</script>



↑をそのままC&P(コピー&ペースト)すると、関数は勝手に実行されます。

あとは、連想配列「qstring」の中の値を参照するだけです。
例えば、「test1=abcde」なら、qstring["test1"]を参照すると、「abcde」が返ります。

ちなみに、Decodeなどはしていないので、必要な方は自分でどうぞ。

print()関数は、document.write()と同じように使えます。


では~

 


 
   JavaScript    TB(0)    CM(0)    EDIT    ページ↑

コメント投稿


 管理者だけに表示

コメント

トラックバック

この記事へのトラックバック:

プロフィール

JDB Luigi

Author:JDB Luigi
どこにでもいるようなありふれた人間・・・という訳でもなく、かと言って怪しい宗教を信仰する変人という訳でも無い。

基本的に掲載しているコード等は煮ていただいても焼いていただいても結構ですが、利用は自己責任にてお願いいします。
また、バグ・アドバイス等もしあればよろしくお願いします。

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。