• ベストアンサー

データの内容によって表示させる画面を切り替えるには?

Javaを使った開発をしています。 <form name="form1234" method="post" action="/xxxx/xxxx" onsubmit="xxxxx"> HTMLフォームで5個のラジオボタンがあり、選択したボタンによって表示させる画面を変更させたい(上記action= の内容を変えたい)のですがうまくいきません。よい方法があればおしえてください。 HTML側でのコントロール自体、無理でしょうか?

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

  • ベストアンサー
  • ryou0607
  • ベストアンサー率27% (71/261)
回答No.2

JAVAということで、おそらくServletですよね。 Servletの中で、radioの値を読んでHttpRequest.getParameter(radioボタン)で処理(getRequestDispatcher)をわければ、JScriptがoffでもページをわけることができます。

k_kat_october
質問者

お礼

回答が年明けになってしまいましたが、アドバイスいただいたことを参考に、無事解決いたしました。 ありがとうございました。

k_kat_october
質問者

補足

お返事ありがとうございます。ご指摘の通りServletで開発しています。具体的なコーディングは以下の通りです。 <form name="form1234" method="post" action="xxxx/aaa.jsp" onsubmit="xxxx"> 中略 <input type="radio" name="syori" value="1"> <input type="radio" name="syori" value="2"> <input type="radio" name="syori" value="3"> <input type="radio" name="syori" value="4"> <input type="radio" name="syori" value="5"> </form> このラジオボタンの内容をサーブレットで受取り、 int wksyori = Integer.parseInt(request.getParameter("syori")); String wkreq = ""; switch(wksyori){ case 1: wkreq = "/xxxx/aaa.jsp"; break; case 2: wkreq = "/xxxx/bbb.jsp"; break; 以下case3~5まで同様にセット } request.getRequestDispatcher(wkreq).forward(request,response);return; のように記述していますが、HTMLのフォームパラメータはデフォルト値のままでaaa.jspが表示されてしまいます。上記コーディングに不備があるのでしょうか?

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

その他の回答 (1)

回答No.1

Javascriptで可能です。 こんな感じですかね。Javascriptを無効にしていると働きませんが… function ActionChange(Form) { Form.action = Form.actionchange.value; } <form name="form1234" method="post" action="/xxxx/xxxx" onsubmit="xxxxx" onsubmit="ActionChange(this)"> <input type="radio" name="actionchange" value="aaa"> <input type="radio" name="actionchange" value="bbb"> <input type="radio" name="actionchange" value="ccc"> </form>

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

関連するQ&A

  • onSubmitで2つの関数を実行したい

    下記のような送信フォームでformCheck()と同時にもう一つ関数を実行させることは可能ですか。その場合にはどのように書けばよろしいでしょうか。 <FORM NAME="myform" ACTION="next.html" METHOD="post" onSubmit="return formCheck()"> これを <FORM NAME="myform" ACTION="next.html" METHOD="post" onSubmit="★ここで2つできる?★">

  • FormのonsubmitでJavaスクリプトを複数使えますか

    こんにちは。 いまフォームページで送信前に記入漏れがないかチェックするのに、スクリプトを使っています。 <form action="../cgi-bin/form.cgi" method="post" name="bkform" onSubmit="return Check()"> このほかに、スパム防止のためJcapというスクリプト(画像で出てくる文字を入力させる)を使うことにしました。 画面上に表示はできるようになったのですが、こちらのスクリプトも <form method="post" action="/cgi-bin/form.cgi" onSubmit="return jcap();" name="xfrm"> というようにonsubmitが必要です。 この二つのスクリプトを1つのページで動かすことは可能なのでしょうか? ご教授お願いいたします・・・。

  • フォームの送信ボタンが押されたときの処理について

    (1).phpファイルにおいて、下記のようなフォームを作成したときに、 JavaScriptの、onSubmitイベントで、PHPの$pushsubumit 変数に 1を代入したいのですが、echo()した結果、代入されていません。 やはり、JavaScriptの文のなかでPHPスクリプトは通用しないのでしょうか? どのようにすれば、送信ボタンを押したという、PHPの$pushsubmitフラグを 1にできるのでしょうか。 (2)ちなみに、JavaScriptのテキストでは、return 1; という表現を用いていますが、 この戻り値はどこでどうやって受けるのでしょうか。 (3)例えば、onSubmit="var pushsubmit; pushsubmit=1;"などと書いたとして、 このpushsubmit=1をPHPスクリプト側でどうやって受ければいいのかがわかりません。 どうぞよろしくお願いします。 --------------------------------------------------------------------------- (1)<form name="form1" method="post" action="bbs.php" onSubmit="showdlgbox(); <?php $pushsubmit=1 ?>"> <?php ~ ?> (2)<form name="form1" method="post" action="bbs.php" onSubmit="showdlgbox(); return 1;">

    • ベストアンサー
    • PHP
  • サーブレット

    HTMLからJavaサーブレットを起動させたいのですが、 うまく行きません submitでActionを起こしてます。 <form name="form1" method="post" action="AAA"> javaサーブレットは同じディレクトリに存在します。 どのようにすればよろしいでしょうか? よろしくお願いします。

  • ラジオボタンをタイトルに

     フォームメールでフォームで選んだラジオボタンの値をタイトルに付けたいのですが、どうすればよいのでしょうか?私はこのようにしてるのですが <form method="post" name="mail" enctype="text/plain" onsubmit="document.mail.action='mailto:メールアドレス?subject=' + document.mail.elements['ボックス名'].value + document.mail.ラジオボタン名.checked"> これでやるとボックスの値はタイトルになるのですが、ラジオボタンの値がundefinedとなってしまうのです。  ラジオボタンで4択にした結果もタイトルに表示する方法は無いものでしょうか?どうか教えて下さい。

  • HTMLフォームPOSTでの引数の渡し方

    HTMLのフォームでPOST送信を利用しているのにURIに引数を指定するのは良いのでしょうか? <form name="form" method="post" action="form.php?abd=123"> のようになっているサイトを見かける事があります。

    • ベストアンサー
    • HTML
  • チェックボタンの受け取り方法

    フォーム作成したチェックボタンの受け取り方法を教えてください。 javaのプログラムを書きたいのですがわかりません。助けてください。 <html> <head> <title>練習</title> <body> <script language="Java Script"> <!-- function send_form(){ for(i=0;i<5;i++){ if(document.form1.Q1[i].checked==true){ int a1=i; return a1; } } } //--> </script> </head> <p> <form action=http://localhost:8080/MyApp/servlet/Param2 method=get> Q1 質問をここに書き込む </p> <form name="form1" action="cgi-bin/formsample.cgi" method="post" onSubmit="return send_form()"> <p> <input type='radio'name='Q1'>思う <input type='radio'name='Q1'>やや思う <input type='radio'name='Q1'checked>どちらでもない <input type='radio'name='Q1'>やや思わない <input type='radio'name='Q1'>思わない </p> <input type="submit" value="送信する"><input type="reset" value"書き直す"> </form> </body> </html>

    • ベストアンサー
    • Java
  • 二重投稿防止

    いつもお世話になっております。 現在PHPで開発を行なっております。 form タグに OnSubmit をつけて二重投稿を防止しようと思ったのですが OnSubmit をつけるとエラーチェックを通ってくれません。 簡易的なものでいいので、二重投稿を防止いたいと思います。 何かアドバイス等お願いいたします。 よろしくお願いいたします。 test.php ----------------------------------------- <? if ($_SERVER['REQUEST_METHOD'] == 'POST') {  // 確認画面へ  if ($_POST['cfm']) {   // エラーチェック  } } ?> <form name="form1" method="post" action="test.php enctype="multipart/form-data" OnSubmit="document.form1.cfm.disabled=true;return true;">  <input name="name" type="text" value="<?= $_POST['name'] ?>">  <input name="cfm" type="submit" value="確認画面へ"> </form> ----------------------------------------- <環境> PHP:5.2.5

    • 締切済み
    • PHP
  • PHPで求めた変数をHTMLで使う方法

    HTMLのformタグで与えた引数を元に、ある値をPHPで求めた後、その求めた変数をHTMLに戻って使う方法をご教授下さい。 例えば、 index.html ↓↓↓ <form action="submit.php" method="post"> <input type="text" name="xxxxx"> <input type="text" name="yyyyy"> <input tyoe="submit" value="実行"> </form> <textarea name="answer"> 実行後ここに、下のPHPで求めた$zzzzzを表示したい。 </textarea> 上のHTMLでxxxxxとyyyyyを入力して実行ボタンを押します。 そしてPHP側は、 submit.php  ↓↓↓ $zzzzz = $_POST["xxxxx"] . "は、" . $_POST["yyyyy"] . "です。"; このように求めた$zzzzzを上のHTMLに戻って表示したいのですが、しばらく調べてみても見つかりませんでした。 どなたかご教授下さい、お願いします。

  • リンクをクリックした時にformからPOST送信したい。

    HTML、PHP、JavaScript等でサイトを作っているのですが・・・。 【実現出来ている例】 <form name="form1" method="post" action="Next.php" onSubmit="return InputCheck()">  <input type="submit" value="送信"> </form>  submitボタンを一つ置いて、それがクリックされた場合に formの内容をPOSTで送信する。 【実現したい例】 <form name="form1 method="post">  <a href="Next.php" onClick="???">???</a> </form>  formの中のリンクをクリックされた場合に、formの内容を POSTで送信したいのですが、その実現方法がわかりません。 GETで送るという手もあり得ますが、今回はどうしてもPOST したいのですが。

    • ベストアンサー
    • HTML