リンクボタンがクリックされたかどうかを判断することってできるんですか?

A 回答 (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で自動的にページジャンプさせるなら
上記の方法でも構わないかと思います。

それでは参考まで
    • good
    • 0
この回答へのお礼

ありがとうございました。
まだまだ、勉強不足なのでわからないことばかりで・・・
参考にして頑張って作業を続けます。
また、何かあった時にはよろしくお願い致します。

お礼日時:2001/01/11 15:43

単純に下記のようじゃ駄目でしょうか?


画面が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変数で受け渡すやり方ってどのようにしたらいいのでしょうか?
いろいろ試したのですが、どうしても上手くいきません。

補足日時:2001/01/10 17:59
    • good
    • 0

下記回答を送信した後に気づいたのですが、marmi1516さんは


サイト側ですか?それともユーザー側で、例えば自分でクリックしたか
どうか知りたいということでしょうか?

それによっては下記の回答が意味をなさないかもしれませんね。

背景と、質問によって得た回答を利用する目的などを補足いただけると
更に詳しく回答できると思います。

osapi124でした。

この回答への補足

ひとつのASPファイルのなかで2つの画面(画面A、画面Bとする)を作成してあって、状況によってどちらかを表示させるような物をつくろうとしているんです。
途中までは上手くできたんですが、画面Aが表示された時、画面上にあるリンクボタンをクリックすると、画面Bにリンクさせるようにしたいんです。(いかなる場合も)
上手く伝わらなくてすみません。

補足日時:2001/01/10 13:50
    • good
    • 0

リンクボタンを押した後に表示されるページのアクセス数をカウントすれば


良いのではないですか?

ただ、そのリンクボタン以外からもそのページに行ける場合は、一枚別の
ページをはさんであげればよいと思います。
よく「5秒後に別のページに飛びます」とか書いてあるような具合にですが、
指定秒数を「0秒」にして白紙のページにすればユーザー側は一枚挟まれて
いることを意識しなくて済みますよ。

osapi124でした。
    • good
    • 0

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

このQ&Aと関連する良く見られている質問

QVS2005リンクボタンのクリックイベントについて

VisualStudio2005+SQL SErver2005 Expressで社内開発を行っています。
今回ほぼ初めてWEBの簡単なアプリの開発を行っていますが初っ端から行き詰っております。
初期ページに、事業部、部署のコンボボックスと氏名入力用のテキストボックスがあり、リンクボタンを配置しています。
氏名の入力が無かったら、リンクボタンを押した際に入力を促すラベルを表示したいのですが、リンクボタンを押してもチェックがされず、次ページへ遷移してしまいます。
Clickイベント、Commandイベント共に処理を書いてみましたが全く処理を通っていないようです。(ブレークポイントに行きません)
クリックした際に処理を行うのは別のイベントがあるのでしょうか?
情報を探していますが、有力な情報に行き着いておりません。
これだ!という情報をお持ちの方、何卒よろしくお願いいたします。

Aベストアンサー

PostBackURLを設定するとClickイベントやCommandイベントなどのPostBack後に発生するイベントは起きません
PostBack自体が変更されたページに移行してしまうからです

実現したい機能は『RequiredFieldValidator』などの検証コントロールを使いましょう
RequiredFieldValidatorをページに作成して『ControlToValidate』に検証の対象となるコントロールを設定します

PostBackイベントが発生するとValidatorコントロールが設定されたコントロールのデータの妥当性をチェックします
検証に違反があれば遷移が中断されます

Qリンクの張られている画像ボタン(name属性無し)をクリック処理するにはどうしたらよいでしょうか。

下記のようなリンクが張られている画像ボタンがあり、これをクリックして次の画面へ進みたいのですが、「input type="button" name =""」などのボタンの属性を定義する記述がないため、どうやってクリック処理をすればいいのか行き詰ってます。
<a href="JavaScript: document.main_fm.submit()" onclick="return goNextCfm(document.main_fm)">
<img src="/dir_A/dir_B/continue.gif" width="92" height="24" alt="続ける" border="0"></a>
質問1.この部分は、continue.gifの画像がクリックされた場合は、main_fmにsubmitする、あるいはgoNextCfm(document.main_fm)を実行する。というふうな意味でしょうか。

main_fmというのは別で以下のように定義されています。
<form name="main_fm" method="post" action="nextform_go.sid?server=X8" onsubmit="return false">
質問2.この部分はmain_fmという名のフォームにsubmitがなされたら、postという方法で"nextform_go.sid?server=X8"というアクションを起こす。という意味でしょうか。

質問3.activeX、あるいは.NETの関数を用いてこの画像ボタンをクリックするのと同様の処理を起こさせるにはどのようにしたらよろしいでしょうか。

下記のようなリンクが張られている画像ボタンがあり、これをクリックして次の画面へ進みたいのですが、「input type="button" name =""」などのボタンの属性を定義する記述がないため、どうやってクリック処理をすればいいのか行き詰ってます。
<a href="JavaScript: document.main_fm.submit()" onclick="return goNextCfm(document.main_fm)">
<img src="/dir_A/dir_B/continue.gif" width="92" height="24" alt="続ける" border="0"></a>
質問1.この部分は、continue.gifの画像がクリックされた場合は、ma...続きを読む

Aベストアンサー

(Q3)
リンクオブジェクトは
document.links で配列として保持されています。
なので、何番目のリンクかということが判っているのであれば、id などが付いていないでも
document.links[n] (nは、0始まりの番目の数)
でアクセスできます。
リンクオブジェクトのクリックについては
document.links[n].click() でできると思います。
(DOM 未対応の場合はダメかもしれない)

Qボタンのクリック

こんにちは!
教えて下さい。
今submitボタンA、普通のボタンBがあります。
submitボタンAをマウスでクリックし、何らかの処理をした後
コード上でボタンBをクリックしたいのですが可能でしょうか?

Aベストアンサー

Bボタンのタイプをsubmitではなく

type="button"

にすれば送信されずに
ボタンBの動作ができますよ

Q閉じるボタンのクリックイベント!?

閉じるボタンを使えないようにするのはできないみたいですが、閉じるボタンをクリックしたときメッセージを出したいのですが、やはり無理でしょうか・・・?

Aベストアンサー

閉じるを禁止することは出来ませんが、閉じられる時に
現在表示しているページを新規で開くのは如何でしょうか?

以下サンプルです。
注:画面に閉じるためのボタンを設置しないと永遠に
 ウィンドウが閉じれないので注意してください。
 タスクマネージャから、強制終了すれば閉じれますけどね。

'******************** ここから ********************
<script language="JavaScript">
<!--
flg = false;
function windClose()
{
  if (flg == false) {
    window.open(location.href, "_blank");
    alert("「閉じる」ボタンで閉じて下さい。");
  }
}
//-->
</script>
<body onunload="windClose();">
<input type="button" value="閉じる" onclick="flg=true;window.close();">
</body>
'******************** ここまで ********************

閉じるを禁止することは出来ませんが、閉じられる時に
現在表示しているページを新規で開くのは如何でしょうか?

以下サンプルです。
注:画面に閉じるためのボタンを設置しないと永遠に
 ウィンドウが閉じれないので注意してください。
 タスクマネージャから、強制終了すれば閉じれますけどね。

'******************** ここから ********************
<script language="JavaScript">
<!--
flg = false;
function windClose()
{
  if (flg == false) {
    window.open(location.hre...続きを読む

QクリックしたボタンのIDの取得

あるプログラムをASP.NETとC#で作っています。
ASP側に、

<asp:ImageButton ID="btn1" runat="server" onclick="btn_Click" />
<asp:ImageButton ID="btn2" runat="server" onclick="btn_Click" />
<asp:Label ID="label1" runat="server" Text=""></asp:Label>

とある場合に、btn1とbtn2、押された方のID名をlabel1に表示するには、btn_Clickイベントにはどう書けば良いでしょうか?

Aベストアンサー

無理やりな方法しかないはず。
こんなんとか。

protected void btn_Click(object sender, ImageClickEventArgs e)
{
if (Request.Form["btn1.x"] != null)
label1.Text = "btn1";
else
label1.Text = "btn2";
}


おすすめ情報