• ベストアンサー

フォーム上のどのボタンが押されたかを区別したい。

今、○という名前のボタンと△という名前のボタンの2つがある画面Aと、次の画面になる画面Bがあります。 ○ボタンが押されたか、△ボタンが押されたかでその後の処理を切り分けたいと思っています。 画面Aの○と△のどちらのボタンが押されたかというのは、遷移先の画面Bで区別することはPerlでできますか?

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

  • ベストアンサー
  • 2NN
  • ベストアンサー率40% (143/353)
回答No.2

<input type="submit" name="test" value="○"> <input type="submit" name="test" value="△"> 上記を送信して、例えば送信データを$in{''} に格納すると、 $in{'test'}に○か△が格納されていますよ。 あとは if($in{'test'} eq "○"){ ... って感じで。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.1

CGIの話なら、sabumitした時に使ったボタンの名前と値がリクエストとして送信されてきますので、それを元に判断できます。 多分、実際にプログラミングして試してみるほうが、理解が速いと思います。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 遷移元を知りたい。

    A.htmlとB.htmlの2つのファイルから1つのPerlを呼び出したいと思います。 遷移元により後続の処理が異なるのですが、どのようにすればAから遷移したか、 Bから遷移したかがわかりますか? Perl&CGIの初心者なので初歩的な質問かもしれませんが、 よろしくお願いします。

    • ベストアンサー
    • Perl
  • FORMで送信ボタンと戻るボタンを2つつけてそれぞれ遷移先を変えたい

       以下のような画面を作りたいのですが↓ -------------------------------------------------------------------------------- ● a.php (ユーザ情報入力画面) ※フォームに入力する画面    <FORM method="POST" action="b.php">   <INPUT type="text" name="mail">   <INPUT type="submit" name="submit" value="確認">  </FORM> ● b.php (ユーザ情報入力確認画面)※フォームに入力された値を表示する画面  <FORM method="POST" action="c.php">   <!-- ここには、フォームに入力された値を表示する -->   <INPUT type="submit" name="submit" value="登録"> // c.php に遷移する   <INPUT type="submit" name="submit" value="戻る"> // a.php に戻る  </FORM> ● c.php (完了画面) -------------------------------------------------------------------------------- b.php について質問なのですが、 b.phpにおいて、登録ボタンと戻るボタンを2つつけて、 それぞれ遷移先を変えたいのですが、どうすればいいんでしょうか・・・? <FORM method="POST" action="c.php">と書いてしまうと、 戻るボタンを押しても戻らずに、c.phpに遷移してしまいますよね?? こういう場合ってJavaScriptとかで遷移先を指定するんですか・・? もしそうでしたら、JavaScriptがよくわからないので できればサンプルコード示していただけると助かります・・・。   

  • ボタンのクリック

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

  • pushボタンを押した後、画面を遷移させない方法

    perl か JavaScript で、pushボタン(submit) を押した後、 画面を遷移させないで cgi を動作させる方法はあるでしょうか。 ちょうど、リセットボタンを押したときのような動作が理想です。 裏で動いてて、結果をファイルとか出してくれればいいのですが・・・

    • ベストアンサー
    • Perl
  • リンク後のボタン画像が表示されません。。

    お世話になっております。 下記URLサイト http://www.css-lecture.com/log/javascript/009.html のプルダウンを行ないたく、実装してみたものですが、 メニューバーにある各ボタンにリンクを設置すると ページ遷移後にメニューバーにあるボタンが?となって認識されません。。 表示されないボタンですが、 例えば、 5つのボタンで、 それぞれ、 Aボタン→01.html Bボタン→02.html Cボタン→03.html Dボタン→04.html Eボタン→05.html リンクしているボタンがあるとしますと、 Aボタンを押して01.htmlに遷移した時は、Aボタンのみ表示されず、Bボタンを押して02.html遷移した時は、Bボタンのみ表示されません。 ソースはそのimgファイルをとって来ているのですが、なぜ表示されないのかがわからず、困っています。 どうか、ご教授お願い致します。

    • ベストアンサー
    • HTML
  • 別ブックのマクロよりコマンドボタンを押下する方法

    当方、VBAに関しては初心者です。 EXCEL2000のVBAで作成したプログラムAの操作を、マクロを使って別のブックに記録させたのですが、マクロを実行しても途中で操作が止まってしまいます。 マクロを変更することで解決できる方法がわかる方がいらっしゃったら教えてください。 ※RocketMouseのようなWindows操作制御ソフトが会社では利用禁止とされていて使えません。 ちなみにVBAで作成したプログラムAは ・ユーザーフォーム上に2つのコマンドボタン(「次へ」「終了」)と4つのラジオボタンがあります。 ・「次へ」を押下すると別のユーザーフォームへ遷移します。 ・遷移先のユーザーフォームにはコマンドボタン(「戻る」)があります。 ※ただし、会社の資産であるためプログラムAを変更することはできません。 マクロで記録した操作は以下の(1)~(4)です (1)ラジオボタンはデフォルト表示のままで (2)コマンドボタン「次へ」を押下して別のユーザーフォームへ遷移 (3)遷移先のユーザーフォームでコマンドボタン「戻る」を押下 (4)(1)のユーザーフォームに戻った後コマンドボタン「終了」を押下 別のブックに(1)~(4)の操作を記録させ実行しましたが、(2)でコマンドボタン「次へ」が押下されず、別のユーザーフォームへ遷移できません。 マクロの変更で別のユーザーフォームへ遷移させる方法を教えてください。 ※コマンドボタン「次へ」の関数はPublic Subで定義されてます。 よろしくお願いします。

  • フォームの戻るボタンについて

    もしかするとカテゴリ違いかもしれませんが、質問させていただきます。 JavaScriptでユーザがボタンのアクティブ・非アクティブの制御ができるフォームを作成し、サーバサイドで処理し(Perl使用)、確認画面を表示しているのですが、その際、 onClick="history.back()"で元のページに戻る遷移を考えていたのですが、元のページに戻った際にアクティブ・非アクティブの制御が初期状態に戻ってしまいます(IE6or7)。 確認画面から元のページに戻った時にユーザが設定した状態をキープしたまま表示させたいと思っています。 サーバサイドで処理しようともしましたが、どうもうまくいきません。 どなたか良い方法をご存知の方がいらっしゃいましたらご教授願えないでしょうか? (例えば下記のようなページから確認画面を経由して戻るような場合です。) <html> <head> <script type="text/javascript"> window.onload = function(){ disableAllGr(); } function disableAllGr(){ var inputList = document.getElementsByTagName('p'); for(var i=0;i<inputList.length;i++){ var obj=inputList[i]; if(obj.id.match(/^gr_/)){ var n=obj.firstChild; while(n){ if(n.nodeName=="INPUT" && n.type=="radio") n.disabled=true; if(n.nodeName=="INPUT" && n.type=="checkbox") n.disabled=true; if(n.nodeName=="INPUT" && n.type=="text") n.disabled=true; if(n.nodeName=="SELECT") n.disabled=true; n=n.nextSibling; } } } } function fchk2(obj) { disableAllGr(); var nameList = obj.value.split(/,/); for( var i in nameList){ if(!document.getElementById('gr_'+nameList[i])) return false; var n=document.getElementById('gr_'+nameList[i]).firstChild; while(n){ if(n.nodeName=="INPUT" && n.type=="radio") n.disabled=false; if(n.nodeName=="INPUT" && n.type=="checkbox") n.disabled=false; if(n.nodeName=="INPUT" && n.type=="text") n.disabled=false; if(n.nodeName=="SELECT") n.disabled=false; n=n.nextSibling; } } } </script> </head> <body> <form> <p id="ctr_FLAG"> <select onchange='fchk2(this)'> <option selected="selected" value="">選んでください</option> <option value="A,A2">Aをアクティブ</option> <option value="A,A2,B,B2">AとBをアクティブ</option> </select> </p> <p>A---------------------</p> <p id="gr_A"> <select> <option>A</option> <option>AA</option> </select> </p> <p id="gr_A2"> <input type="radio" value="2mm" /> テストA <input type="radio" value="3mm" /> テストAA </p> <p>B-----------------------</p> <p id="gr_B"> <select> <option>B</option> <option>BB</option> </select> </p> <p id="gr_B2"> <input type="radio" value="2mm" /> テストB <input type="radio" value="3mm" /> テストBB </p> <p>-----------------------</p> <p><input type="submit"></p> </form> </body> </html>

  • ラジオボタンのリセット方法

    現在フレームをつかって二分割しているんですが(A,Bとする) Bにラジオボタン選択画面にして ラジオボタンを選択してOKを押すと その処理をAで行い 新しい画面をAに出すと しています。 その際ラジオボタンを前に選択したものが 残ってしまい リセットしたいのですがどうしたらよいですか?

  • 3つのボタンのどれを遠隔で押しているかを知るシステ

    個室の使用状況(空き/使用中/会議中)を室内から簡単に発信したいのですが、以下のようなシステムは何かで作れないものでしょうか。 Googleスプレッドシートの共有を考えましたが、Googleスプレッドシートでは図形描画で作成した図形の色をかえたりできないことがわかり、断念しました。 画面上に3つの大きなボタン(丸でも四角でも良い)があって、それぞれに仮にA,B,C という名前がついていたとします。 インターネットであるサイトにアクセスすると、その3つのボタンが表示され、だれかがそのうち1つを押したとします。(仮にAボタン) 他の人が別のPCやタブレットでインターネットで同じサイトにアクセスすると、同じ画面が表示され、Aボタンだけが押されて色が変わっている画面が表示されます。

  • ラジオボタンのチェックイベント

    ラジオボタンを3つ用意しています。 それぞれはラジオボタンはチェックされた瞬間に、それぞれの画面遷移先を指定したいと思っています。 今現在のソースとしては、 <INPUT type="radio" name="radio" onchange="location.href='○○○.html'">あ <INPUT type="radio" name="radio" onchange="location.href='○○△.html'">い <INPUT type="radio" name="radio" onchange="location.href='○○×.html'">う としていますが、これだと、チェックが離れた瞬間に 遷移するようになってしまいます。 ラジオボタンにチェックした瞬間に画面遷移したいのですが、どうしたらいいのでしょうか? おねがいします。

    • ベストアンサー
    • HTML