• 締切済み

表示・非表示の度にURLにパラメーター表示

初心者なので間違っていることもあるかもしれませんが、よろしくお願いします。 サーバーサイドの言語ではないので無理だろうなとは思っていますが、念の為に詳しい方にお聞きしたいことがあります。 現在サイトを開設していてリンクをクリックしたらその下にサンプルテキストが表示・非表示で切り替わるようにしています。 1ページにこのような表示・非表示のリンクを多数設置しているのですが、クリックして表示させても当然URLはそのままです。 これをクリックした場合、例えば下記のようにすることはできるでしょうか? http://○○.com/sample.html ↓ http://○○.com/sample.html?test このようにパラメーター?がついたURLにして表示させたりしたいのですが。そのURLにアクセスすれば、現在表示させているのがすぐ見れるように。 よくPHPやCGIでみられるやつです。 ソースは下記のようにしています。 □HTMLファイル <a href="#" class="player" onClick="showHide('TEST');return false;">テスト</a> <div id="TEST" style="display: none">サンプルテキスト</div> □外部JSファイル var objTextIDArray = new Array("TEST"); function showHide(targetID) { //functionの宣言。受けとったIDは変数targetIDに格納。 if( document.getElementById(targetID)) { //指定のIDのついたオブジェクトがあったら処理する //指定されたIDのstyle.displayがnoneなら if( document.getElementById(targetID).style.display == "none") { //blockに変更する for(var i = 0; i < objTextIDArray.length; i++) if(document.getElementById(objTextIDArray[i])) document.getElementById(objTextIDArray[i]).style.display = "none"; document.getElementById(targetID).style.display = ""; } else { //noneでなければ、つまりblockなら //noneにする document.getElementById(targetID).style.display = "none"; Javascriptに詳しい方に無理と言われれば諦めつくのですが。もしかしたら何か方法があるかもと思いました。 ご存知の方いらっしゃいましたら、ご教示ください。 よろしくお願いします。

みんなの回答

noname#199456
noname#199456
回答No.3

クリックしたときに表示状態をcookieで覚えておいて、location.herf=http://○○.com/sample.html?testとなるようにして、再度表示された時にcookieの値を取得して… ということをすればできると思います cookieはjQuery.Cookieとかを使えば比較的簡単に扱えます ※HTML5限定ですが、WebStorageを使うという手もあります

回答No.2

location.hrefでgetできますがページ更新されちゃいますよ?

  • mjtanaka
  • ベストアンサー率39% (34/86)
回答No.1

「?」をつけるということはget通信を行うということでよろしいでしょうか。 それでしたら、参考URLでサンプルがありますのでご参考にしてください。

参考URL:
http://www.openspc2.org/JavaScript/Ajax/Ajax_study/chapter04/002/

関連するQ&A