データベースの値を判断してラジオボタンにセットする方法

このQ&Aのポイント
  • Javaサーブレット&JSPを使用して、データベースの値を判断してラジオボタンにセットする方法について説明します。
  • HTMLフォームで選択したラジオボタンの内容をデータベースに登録する方法について解説します。
  • データベースに登録した値を変更した場合に、ラジオボタン形式で登録内容を表示する方法について詳しく説明します。
回答を見る
  • ベストアンサー

データベースの値を判断してラジオボタンにセットする方法

Javaサーブレット&JSPで開発しています。 HTMLフォームよりラジオボタンを選択して、その内容をデータベースに登録します。 <input type=radio name=xxxx value=1>りんご <input type=radio name=xxxx value=2>みかん <input type=radio name=xxxx value=3>ばなな 上記の例だと、りんごを選択したとき、データベース上のxxxxには、1を登録します。 その後、変更時には下記のように登録した内容を画面にラジオボタン形式で表示させたいのですがどのように記述すればよいでしょうか? <input type=radio name=xxxx value=1 checked>りんご <input type=radio name=xxxx value=2>みかん <input type=radio name=xxxx value=3>ばなな

  • Java
  • 回答数1
  • ありがとう数1

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

  • ベストアンサー
  • LancerVII
  • ベストアンサー率51% (1060/2054)
回答No.1

選択項目をどのように表示しているかによっても ロジックが変わってきますが、 1.選択項目が動的である(DBから持ってくる等)   選択項目を表示するループ内に、データと比較   判断を行い、checkedの文字列を追加して表示する ===========================================================   選択項目表示分のループ{    表示する選択項目とデータを比較     同じだった場合checkedを出力     違う場合は何も出力しない   } =========================================================== 2.選択項目が静的である(選択項目でデータは1~順番に入っている)   データの保持の仕方によって使えるタイプです。   逆を言うと、汎用性はありません。   データを例のように単純な数値の連番で持っていないとです。   下の例ですとリンゴの場合は1が入っており、その該当する配列   に、checkedの代入を行っています。   その後表示の際、配列の中身を順番に表示し、checkedが入っていれば   そこにデフォルトでチェックがされます。 =========================================================== <%   // 配列宣言   String[] checked = new String[]{"","",""};   // データを取得する(1が入っていた(リンゴ)) int data = (取得);   // 添字は0から   checked[data-1] = " checked";   // 表示   out.write ( "<input type=radio name=xxxx value=1" + checked[0] + ">りんご" );   out.write ( "<input type=radio name=xxxx value=2" + checked[1] + ">みかん" );   out.write ( "<input type=radio name=xxxx value=3" + checked[2] + ">ばなな" ); %> =========================================================== あとは、if文でゴリゴリに書くとか、いろいろな方法があると思います。 とりあえず、思いついたロジックを回答とします。

関連するQ&A

  • チェックボックス/ラジオボタン

    CGIを勉強中です。 まだ無料で配布されているCGIをカスタムするくらいしかできないレベルです。 今度やりたいのが、チェックボックス/ラジオボタンどじらでもいいのですが、 こちらに送られてくるメールフォームで選択されているものは仮に「Y」 選択されていないものは「N」という形で受け取りたい場合はどのように したらできるのでしょうか? よろしくお願いします。 <input type="checkbox" name="みかん" value="みかん" />みかん <input type="checkbox" name="りんご" value="りんご" />りんご <input type="checkbox" name="メロン" value="メロン" />メロン <input type="radio" name="みかん" value="みかん">みかん  <input type="radio" name="りんご" value="りんご">りんご

    • ベストアンサー
    • CGI
  • JSP(ラジオボタンでチェックされた値を代入)

    JSPのHTML箇所で以下のようなラジオボタンを作成しました。 <input type="radio" name="a" value="1" checked> <input type="radio" name="b" value="2"> 上のラジオボタンが選択されたとき、<% %>のJAVAで変数cに1をセット、 下のラジオボタンが選択されたとき、変数cに2をセットという形を作りたいのですが、 調べてもわかりませんでしたのでご教示ください。 以下のようにするとどちらもソースを通るので、必ず2が代入されてしまいます。 IF文的にどちらかチェックされたほうを代入できるようにしたいです。 <input type="radio" name="a" value="1" checked <% c=1 %>> <input type="radio" name="b" value="2" <% c=2 %>>

    • ベストアンサー
    • Java
  • ラジオボタンの値を・・・・・

    <html> <head> <script language="javascript"> function osu(){ document.form1.text1.value=document.form1.radio1.value; } </script> </head> <body> <form name="form1"> <input type="radio" name="radio1" value="男" checked>男 <input type="radio" name="radio1" value="女">女 <input type="button" value="押す" onClick="osu()"> <input type="text" name="text1"> </form> </body> </html> ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー 上記のプログラムは、選択されたラジオボタンの値をテキストボックスに表示させるプログラムなんですが、何故かラジオボタンの値が表示されず、「undefined」というのが表示されます。 どうすれば、「男」または「女」という値を表示させることができますか? ちなみにこれは、「○○○.html」で保存します

  • 5問択2のラジオボタンは作れますか。

    5問のうち2つ選択するラジオボタンを作る方法はあるのでしょうか。 JavaScript自体は意識して勉強したことがないのですが、 以下のような構文しか思いつきません。 <input type="radio" name="question1" value="1">いちご <input type="radio" name="question1" value="2">オレンジ <input type="radio" name="question1" value="3">桃 <input type="radio" name="question1" value="4">バナナ <input type="radio" name="question1" value="5">パナップル 出来る方法などご存知の方おられましたら幸いです。

  • ラジオボタン選択で「複数ラジオボタン」をアクティブにするには?

    ■下記サンプルソースのラジオボタンの「はい」を選択すると複数のラジオボタンがアクティブになるJavaScriptがわからず困っております。教えて頂けないでしょうか。 (ページ開いた際は「いいえ checked」で複数ラジオボタンはグレーで選択無効) 用途はアンケートフォームです。 可能であればシンプルなソースで「最新のWinIE、MacSafari」に対応していると非常に助かります。先輩方よろしくお願いします。 <form name="form2" method="post" action=""> <table> <tr> <td>■「はい」を選択すると、ラジオボタン(カテゴリー1~4)がアクティブになる。 </td> </tr> <tr> <td> <input name="radiobutton" type="radio" value="radiobutton">はい <input name="radiobutton" type="radio" value="radiobutton" checked>いいえ </td> </tr> <tr> <td> <input name="radiobutton" type="radio" value="radiobutton">カテゴリー1 <input name="radiobutton" type="radio" value="radiobutton">カテゴリー2 <input name="radiobutton" type="radio" value="radiobutton">カテゴリー3 <input name="radiobutton" type="radio" value="radiobutton">カテゴリー4 </td> </tr> </table> </form>

  • 選択したたラジオボタンの値をSUBMITボタンに

    選択したたラジオボタンの値をSUBMITボタンの名前として自動的に替えたいのですが、助言をいただけますか。 イメージは下記です。★の部分に、クリックごとにradioの値を入れたいのです。 <script Language="JavaScript"><!-- function set() { n = document.myFORM.Radio.value; } // --> </script> <FORM ACTION="add.cgi" METHOD="POST" name="myFORM"> <INPUT TYPE="RADIO" NAME="Radio" VALUE="東京" onclick="set()" CHECKED> <INPUT TYPE="RADIO" NAME="Radio" VALUE="大阪"> <INPUT TYPE="SUBMIT" NAME="Submit" VALUE="★"></form>

  • jQueryで複数のラジオボタンを処理

    jQueryを最近使い始めました。 以下のようなことをしたいのですが、いいやり方が分かりません。 jQueryを使ってページの読み込み後すぐに、ラジオボタンにチェックを入れたいと思っています。 以下のようにすると実際にチェックが入りました。 HTML <input type="radio" name="a" value="1" /> <input type="radio" name="a" value="2" /> jQuery if(!$("input:radio[name=a]:checked").val()){  $("input:radio[name=a]:first").attr("checked" , "checked"); } ラジオボタンが複数ある場合、上記のjQueryのnameの値を変えたものを増やしていけば対応できたのですが、ラジオボタンがたくさんある場合、同じようなスクリプトが何行も増えてしまいます。 うまく関数にする方法やその他よい対処法はないでしょうか。 <input type="radio" name="a" value="1" /> <input type="radio" name="a" value="2" /> <input type="radio" name="b" value="1" /> <input type="radio" name="b" value="2" /> <input type="radio" name="c" value="1" /> <input type="radio" name="c" value="2" /> … if(!$("input:radio[name=a]:checked").val()){  $("input:radio[name=a]:first").attr("checked" , "checked"); } if(!$("input:radio[name=b]:checked").val()){  $("input:radio[name=b]:first").attr("checked" , "checked"); } if(!$("input:radio[name=c]:checked").val()){  $("input:radio[name=c]:first").attr("checked" , "checked"); } …

  • リンク文字クリックでラジオボタン選択、テキストボックス表示したい

    次のようにハイパーリンク文字列、ラジオボタン、テキストボックスが並んでいます。 <html> <head></head> <body> <a href="#">りんご</a> <a href="#">みかん</a> <a href="#">いちご</a> <input type="radio" name="select" value="0" checked >りんご <input type="radio" name="select" value="1">みかん <input type="radio" name="select" value="2">いちご <input size="40" name="label" type="text" value="りんご" readonly> </body> </html> ここで、各ハイパーリンク文字列をクリックした瞬間に、 (1) 該当するラジオボタンが選択される (2) ラベルがテキストボックスに表示される というように動作させたいのです。 また、<a href="#">とすると画面を再読み込みしてしまうようなので、 再読み込みされない書き方についてもご教示いただけますとまことに 幸いです。よろしくお願い致します。

  • 文字列を表示/非表示させつつ、ラジオボタンを選択

    つぎのテーブルがあります。 <html><head></head><body> <form id="query" name="query"> <table border="1"> <tr> <td>いちご▲▼</td> <td>みかん▲▼</td> <td>りんご▲▼</td> </tr> </table> <input type="radio" name="select" value="ichigo_up" checked >いちご▲ <input type="radio" name="select" value="ichigo_dw">いちご▼ <input type="radio" name="select" value="mikan_up">みかん▲ <input type="radio" name="select" value="mikan_dw">みかん▼ <input type="radio" name="select" value="ringo_up">りんご▲ <input type="radio" name="select" value="ringo_dw">りんご▼ </form> </body></html> (1) 最初(画面読み込み時)はいちごの脇の「▼」1個だけが表示されている(他の▲は全部隠す) (2) いちごをクリックすると、▼は反転して▲になる (3) もう一回いちごをクリックすると、▲は反転して▼に戻る (4) つぎに、みかんをクリックするといちごの脇の▼は消え、みかんの脇に▼がでる (5) もう一回みかんをクリックすると、▼は反転して▲になる (6) さらに、りんごをクリックするとみかんの脇の▲は消え、りんごの脇に▼がでる (7) 別途、表示される6パターンに応じ、下にあるラジオボタンも適切なものが選択される …というような動作をさせたいのです。 どうぞ、よろしくお願い致します。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=1612522 でも同じような質問を してしまい、すみません。もう少し吟味して、上記のようにしたいです。 よろしくお願い致します。

  • ラジオボタンについて

    ラジオボタンのオブジェクトにcheckedプロパティはあるのでしょうか? ラジオボタンは基本的に1つしか、値を取らないので 例えば以下の場合、可にチェックがあれば、kokugoの値は「可」 ということでしょうか? <input type="radio" name ="kokugo" value="優">優 <input type="radio" name ="kokugo" value="良">良 <input type="radio" name ="kokugo" value="可">可 <input type="radio" name ="kokugo" value="不可">不可

専門家に質問してみよう