• ベストアンサー

JavaScriptによるページURLの取得、その利用について。

現在開いているページのURLを取得し、それを文字列として扱う方法はありますか?また、その文字列を比較に用いたいのですが、良い方法があれば教えてください。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • cyokodog
  • ベストアンサー率56% (13/23)
回答No.2

下記記述でできます。 a.html(テスト用の呼び出し側HTML) <!DOCTYPE HTML> <html> <body> <form action="exquerystring01b.html"> <input name="param1"/> <input name="param2"/> <input type="submit"/> </form> <a href="b.html?param1=あいうえお&param2=かきくけこ">link</a> </body> </html> b.html(呼び出され側のHTML) <!DOCTYPE HTML> <html> <head> <script> window.onload = function(){ var url = location.href; if(url.indexOf('?') < 0) return false; var params = url.replace(/.+\?/, '').split('&'); var result = {}; for(var i=0; i<params.length; i++ ){ var param = params[i].split('='); result[ param[0] ] = decodeURIComponent(param[1]); } alert(result.param1) alert(result.param2) } </script> </head> <body> </body> </html> ちなみにこちらで紹介してる jQuery プラグインを使うと以下ように簡略して書けます。 http://d.hatena.ne.jp/cyokodog/20090526/jQueryExQueryString01 b.html(呼び出され側のHTML) <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script src="jquery_1_2_6.js"></script> <script src="jquery.exquerystring.js"></script> <script> jQuery(function($){ alert($.ex.queryString().param1) alert($.ex.queryString().param2) }); </script> </head> <body> </body> </html> またURL以外にも ・<a href="xxx.php?aaa=1&bbb=2">link</a> ・<script src="xxx.js?aaa=1&bbb=2"></script> などの値も取得できます。 ご参考までに

参考URL:
http://d.hatena.ne.jp/cyokodog/20090526/jQueryExQueryString01

その他の回答 (2)

  • cyokodog
  • ベストアンサー率56% (13/23)
回答No.3

あ!すいません。 ページのURLがとれればいいだけだったみたいですね。 location.href で、以下のような感じで文字列として参照できます。 "http://okwave.jp/kotaeru_reply.php3?q=5278347"

  • kana_m
  • ベストアンサー率40% (26/65)
回答No.1

window.locationで現在のURLが取得できます。 JavaScriptでは文字列かどうかは扱う側によるので、 var url = window.location; で変数urlに値が入ります。

関連するQ&A