- ベストアンサー
リンクボタン
リンクボタンがクリックされたかどうかを判断することってできるんですか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
Session変数の場合ですが、下記コードで流れはわかってもらえると思います。 '--- test.asp ----- If Session("gamen") = "B" Then ' 画面Bの表示処理を記述する Set Session("gamen") = Nothing Else ' 画面Aの表示処理を記述する Session("gamen") = "B" Response.Write "<a href=""test.asp"">画面Bへ</a>" End If Session変数を使用するときはSession.TimeOutの値に気をつけて下さいね。 上記の例だと、画面AをSession.TimeOutの値以上の時間表示させたまま画面Bへのリンクボタン押しても、画面Aが表示されます(汗) 特に支障なければ回答#3の方が無難ですね(苦笑) Response.Redirectで自動的にページジャンプさせるなら 上記の方法でも構わないかと思います。 それでは参考まで
その他の回答 (3)
- hequil
- ベストアンサー率65% (242/372)
単純に下記のようじゃ駄目でしょうか? 画面が3ページ以上なら、Select Caseの方が綺麗ですが If Request.QueryString("gamen") = "B" Then ' 画面Bの表示処理を記述する Else ' 画面Aの表示処理を記述する Response.Write "<a href=""test.asp?gamen=B"">画面Bへ</a>" End If URLは「test.asp」のままがいいのであれば、 Session変数やPOSTで値を受け渡してもいいですよね
補足
Session変数で受け渡すやり方ってどのようにしたらいいのでしょうか? いろいろ試したのですが、どうしても上手くいきません。
- osapi124
- ベストアンサー率42% (95/224)
下記回答を送信した後に気づいたのですが、marmi1516さんは サイト側ですか?それともユーザー側で、例えば自分でクリックしたか どうか知りたいということでしょうか? それによっては下記の回答が意味をなさないかもしれませんね。 背景と、質問によって得た回答を利用する目的などを補足いただけると 更に詳しく回答できると思います。 osapi124でした。
補足
ひとつのASPファイルのなかで2つの画面(画面A、画面Bとする)を作成してあって、状況によってどちらかを表示させるような物をつくろうとしているんです。 途中までは上手くできたんですが、画面Aが表示された時、画面上にあるリンクボタンをクリックすると、画面Bにリンクさせるようにしたいんです。(いかなる場合も) 上手く伝わらなくてすみません。
- osapi124
- ベストアンサー率42% (95/224)
リンクボタンを押した後に表示されるページのアクセス数をカウントすれば 良いのではないですか? ただ、そのリンクボタン以外からもそのページに行ける場合は、一枚別の ページをはさんであげればよいと思います。 よく「5秒後に別のページに飛びます」とか書いてあるような具合にですが、 指定秒数を「0秒」にして白紙のページにすればユーザー側は一枚挟まれて いることを意識しなくて済みますよ。 osapi124でした。
お礼
ありがとうございました。 まだまだ、勉強不足なのでわからないことばかりで・・・ 参考にして頑張って作業を続けます。 また、何かあった時にはよろしくお願い致します。