重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

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

A 回答 (3件)

下記記述でできます。



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/jQueryEx …

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/jQueryEx …
    • good
    • 0

あ!すいません。


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

window.locationで現在のURLが取得できます。


JavaScriptでは文字列かどうかは扱う側によるので、
var url = window.location; で変数urlに値が入ります。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!