JSP+Servlet+Beanで作成する方法とセット方法

このQ&Aのポイント
  • JSP+Servlet+Beanを使って作成する方法と、ラジオボタンのセット方法について教えてください。
  • JSPにはラジオボタン、テキスト、ボタンなどがあります。Bを選択時にラジオボタンを選択状態にする方法を教えてください。
  • Beanでのセット方法やJSPでのタグの使い方について勉強しているが、ラジオボタンについての理解が不足しています。
回答を見る
  • ベストアンサー

JSP + ラジオボタン

JSP+Servlet+Beanで作ってます。 JBuilder5を使ってます。 JSPはラジオボタン、テキスト、ボタン等があります。 <INPUT TYPE = "radio" NAME = "r1" VALUE = "ins">A <INPUT TYPE = "radio" NAME = "r1" VALUE = "upd">B <INPUT TYPE = "radio" NAME = "r1" VALUE = "del">C としています。 たとえば、Bを選択時、ボタンクリックで Servletにリクエストを送信しますが、 Servletから再びJSPを呼び出し、画面を 表示するとき、ラジオボタンはBを選択 させたいのですが、どうしたらいいですか? FormタグのCHECKEDというオプションを どのように使えばいいのか教えていただきたいのですが。 テキストには、Beanでsetメソッド、 JSPでは、<jsp:getProperty・・・>を使って セットできているんですが、ラジオボタンも 同様ですか? @@@・・・JSPのタグを勉強しないといけないです。 @@@勉強不足です。

noname#2205
noname#2205
  • Java
  • 回答数4
  • ありがとう数2

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

  • ベストアンサー
  • kuro_73
  • ベストアンサー率28% (33/117)
回答No.4

<% %>のなかに <jsp:getProperty name="wk" property="aaa" /> のようなJSPタグを使用することはできません。 これはエラーになります。 wkがBeanのインスタンス名、aaaがプロパティ名なので <% if(wk.getAaa()==1){ out.print("checked");} %> でよいと思いますが・・・

noname#2205
質問者

補足

何度も何度も申し訳ありませんでした。。 結果、できました!!!! 本当に今日はいっぱい質問してしまって 申し訳ありませんでした。。。 超がつく初心者なのでもっと勉強しなければ と改めて思います。 kuro_73さん、本当に本当にありがとうございました。 ##最初からこういうコーディングにしてて エラーがでてます、と具体的に 書いておけばよかったです。 すみません。。。

その他の回答 (3)

  • kuro_73
  • ベストアンサー率28% (33/117)
回答No.3

すごく基本的なことですが、以前同様な経験をして「あっ!」と思ったことがあったので、一応確認させてください。 なんらかのスクリプトエラーでこのように、全てにcheckedがついていませんか? <INPUT TYPE="radio" NAME="FLG1" VALUE="A" checked>A <INPUT TYPE="radio" NAME="FLG1" VALUE="B" checked>B こうすると、一番最後のradioのチェックが有効になりますが・・・

noname#2205
質問者

補足

すみません。 3番目にCHECKEDがあるというのは、 みてみると、タグの間違いでした。 しかし、結局、エラーになってしまいます。 <INPUT name="r1" type=radio value=1 <% if(<jsp:getProperty name="wk" property="aaa" /> ==1){ out.print("checked");} %> > A というかんじにしたいんですが、 コーディング途中でJBuilderのエラーチェックに かかります。 タグの書き方がおかしいんでしょうね。。

  • kuro_73
  • ベストアンサー率28% (33/117)
回答No.2

<INPUT name="r1" type=radio value=1 <% if(aaa=="1"){ %> checked <% } %> > のように表示したければ、まず <INPUT name="r1" type=radio value=1 <% if(aaa.equals("1")){ out.print("checked") } %> > このように書き直す必要があります。 aaaの値を<jsp:getProperty・・・>って、ようはBeanから持ってきた値をaaaに代入したいという意味ですよね? kanayuさんのやり方で多分大丈夫だと思いますが。。。 あまりjsp1.0は使用したことがなくてよく分からないんです。 JSPタグもホンの基本しか使わず、Beanを使うときは、sessionにBeanを付加して、 <% %>の中でsessionからsession.getValue()しているので・・ No.1で回答したやり方で、Beanもsessionにくっつけられるので、 もし、kanayaさんのやり方で上手くいかなければ、これも試してみてください。

noname#2205
質問者

補足

有り難うございます。 >aaaの値を<jsp:getProperty・・・>って、 >ようはBeanから持ってきた値をaaaに代入したいという意 >味ですよね? >kanayuさんのやり方で多分大丈夫だと思いますが。。。 やってみたんですが、結局3つめのラジオボタンに ずっとチェックがある状態でした。 (3つめのボタンにCHECKEDをつけているような状態でした。) それで、kuro_73さんが書かれたNo1のコードを 試してみたのですが、 いくつかでエラーとなってしまいました。 session.putValue("checkA" ,"checked"); のputValueで警告がでました。 String checkA = (String)session.getValue("checkA"); のgetValueで警告がでました。 それぞれ、setAttribute,getAttributeにおきかえて 実行してみましたが、Error500がでてきました。 うーん。なんかいい方法はないですかねえ。。。 もう少し調べてみます。

  • kuro_73
  • ベストアンサー率28% (33/117)
回答No.1

あなたの文章が良く理解できないのですが、 つまりこう言うことをやりたいのですか? ****Servlet**** doGet(HttpServletRequest req, HttpServletResponse res){ //処理 HttpSession = session //セッションを取得・・trueだったら新規セッションを作る session = req.getSession(false); String aaa = req.getParameterValues("r1"); //セッションに値をput if(aaa.equals("ins")){ session.putValue("checkA" ,"checked"); session.putValue("checkB" ,""); session.putValue("checkC" ,""); }else if(aaa.equals("upd")){ session.putValue("checkA" ,""); session.putValue("checkB" ,"checked"); session.putValue("checkC" ,""); }else if(aaa.equals("del")){ session.putValue("checkA" ,""); session.putValue("checkB" ,""); session.putValue("checkC" ,"checke"); } //JSPを表示 } ****JSP**** <% HttpSession session = request.getSession(true); <% HttpSession session = request.getSession(false); String checkA = (String)session.getValue("checkA"); String checkB = (String)session.getValue("checkB"); String checkC = (String)session.getValue("checkC"); %> <INPUT TYPE = "radio" NAME = "r1" VALUE = "ins" <%=checkA>>A <INPUT TYPE = "radio" NAME = "r1" VALUE = "upd" <%=checkB>>B <INPUT TYPE = "radio" NAME = "r1" VALUE = "del" <%=checkC>>C

noname#2205
質問者

補足

分かり難い質問、文章、申し訳ありません。 また、答えてくださって有り難うございます。 やりたかったのは、JSPのなかで IF文を用いて、GetPropertyした値を 判断し、CHECKEDがつけれるか、といったことです。 <INPUT name="r1" type=radio value=1 <% if(aaa=="1"){ %> checked <% } %> > こういうタグの使い方をしようと 試みたんですがうまくいかないのです。 というのは、 <% if(aaa=="1"){ ・・・・ のaaaにあたる値を <jsp:getProperty name="wk" property="syori_no" /> でとってきた値にしたいのです。 テキストでは、このgetPropertyって よく使いますよね。だから、ラジオボタンでもつかえない かなとおもいまして。。。 こういう使い方はしないのでしょうか??

関連するQ&A

  • 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
  • ボタンクリック-JSP判断

    JSP+Servlet+Beanで作ってます。 画面には、テキストとボタンが配置してます。 Aボタンクリックで、テキストに何にも 値が入ってない場合は別のHTMLに移動し、 何か値が入っている場合は テキストをクリアする処理をしたいのですが ・・・ <INPUT TYPE = "button" NAME="RTN" VALUE ="戻る" onClick= <% if(wk.getRtn_tmp()==1){ out.print ("location='http://localhost:8080/form.html'");} else{out.print ("location='http://localhost:8080/servlet/jyohoya.kanri_Srv'") ;} %>> 上記のように、JSPで判断させようと しています。 Beanでrtn_tmpというプロパティを セットしておいて、JSPのIF文で判断させようと思ったんですが・・・ <INPUT TYPE = "submit"・・・>にしておいて、Servletで Aボタンの処理判断をしないといけないのでしょうか。 しかし、JSPのonclick以下で判断ができても よさそうなのですが。。。指定の仕方がおかしいのかもしれません。

    • ベストアンサー
    • Java
  • ラジオボタンについて

    ラジオボタンのnameにそれぞれ違う名前をつけても 選択の制限を1つだけにできるやり方はありませんか? 例 <input type="hidden" name="a1" value="0151" /> <input name="a" type="radio" value="1" /> <input type="hidden" name="b1" value="0152" /> <input name="b" type="radio" value="1" /> <input type="hidden" name="c1" value="0153" /> <input name="c" type="radio" value="1" /> 私がやりたいことはあるプログラムシステムで使用するため ラジオボタンの上にhiddenでそれぞれ指定してるため このような形で表示できないかと、おもっています。

    • ベストアンサー
    • HTML
  • ラジオボタンについて

    つまらない質問ですがどうか教えてください。 <form name="myform"> ・ ・ ・ <INPUT TYPE="RADIO" NAME="R1" VALUE="1">関連あり</INPUT> <INPUT TYPE="RADIO" NAME="R1" VALUE="2">関連なし</INPUT> <INPUT TYPE="RADIO" NAME="R1" VALUE="3">不明</INPUT> </form> 上記のようなラジオボタンを作ったのですが、 このラジオボタンのチェックされた値を取得するには document.myForm.cGyoumu.value ではできないのでしょうか? LOOPさせながらdocument.myForm.elements(i).checked で探さないと取得できないのでしょうか? 同じフォーム内にラジオボタンが複数あるため、 この方法はあまりやりたくありません。 ほかに方法がありましたら、どうか教えてください。

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

    下記のradioボタンのグループr1、r2、r3、r4のうちグループr1とr2だけを同時にリセットする方法はありますか? グループ1つリセットする方法はわかりますが、2つリセットになると方法が分かりません。 良い方法はありませんか?よろしくお願いします。 <form> <p> <input type="radio" name="r1" value="1" checked>1<br> <input type="radio" name="r1" value="2">2<br> <input type="radio" name="r1" value="3">3 </p> <p> <input type="radio" name="r2" value="a" checked>a<br> <input type="radio" name="r2" value="b">b<br> <input type="radio" name="r2" value="c">c </p> <p> <input type="radio" name="r3" value="a" checked>a<br> <input type="radio" name="r3" value="b">b<br> <input type="radio" name="r3" value="c">c </p> <p> <input type="radio" name="r4" value="a" checked>a<br> <input type="radio" name="r4" value="b">b<br> <input type="radio" name="r4" value="c">c </p> </form>

  • jsp から servlet に

    パラメータをJSPからServlet に渡す所で、どうしても、null になってしまします‥。 主要な部分だけ書きます。 --jsp-- <jsp:useBean id="beanId" class="Bean" scope="request" /> <form method="POST" action="servlet"> <input type="submit" value="送信"> <input type="text" size="10" name="name"> --servlet-- import Bean; Bean bean = (Bean)request.getAttribute( "beanId" ); // ↑ここが、nullになってしまう。 --Bean-- public String getName() { return name; } public void setName( String name ) { this.name = name; } 考え方が違ってるかも知れないのですが‥。 よろしくお願いします。

    • ベストアンサー
    • Java
  • ラジオボタンによる有効なボタンの切り替えについて

    はじめまして。 下記のような機能を実装したいと思っています。 どなたか教えていただけませんでしょうか? <html> <head> <title>サンプル</title> </head> <input type="radio" name="radio1" value="a">A <input type="radio" name="radio1" value="b">B <input type="radio" name="radio1" value="c">C <input type="radio" name="radio1" value="x">全部ダメ <br><br> <input type="button" value="Aボタン"> <input type="button" value="Bボタン"> <input type="button" value="Cボタン"> </body> </html> ラジオの「A」を選択すると「Aボタン」のみ有効で他は無効(disabled)になり 「B」を選択すると「Bボタン」のみ有効というように、 選択したラジオボタンの値と有効なボタンを連動させたいのです。 さらに、ラジオの「全部ダメ」を選択すると全てのボタンを無効としたいです。 ラジオボタンの値の取得のjavascriptなど個々の機能について調べてみたりしたのですが どのように組み合わせれば、機能を実現できるのかわかりませんでした。 お手数ですが、ご教示いただけますでしょうか。。 可能ならばソースのサンプルをいただけるとありがたいのですが。 どうぞよろしくお願いいたします。

  • servletからjspへ戻った後のラジオボタン

    servletから、データベースを検索し、JSPへデータベースの検索結果件数を戻します。 その検索結果数だけラジオボタンを作ります。 <% ここで、検索結果取得 %> <% for(i = 0; i< <%=検索結果件数 %>; i++){ %> <input type="radio" name="q1" value="<%=検索結果%>"CHECKED> 1 <%} %> (1)このようにループしてラジオボタンを作る場合、ループ最後のラジオボタンがcheckデフォルトになってしまいます。ループ最初のラジオボタンをcheckデフォルトにしたい場合、どうすればよいのでしょうか? (2)このラジオボタンで設定後、次のJSP画面に遷移した後にhistory.backを行うとデフォルトのチェックボタンが消えてしましますが、どうすれば消えないのでしょうか?

    • ベストアンサー
    • Java
  • ラジオボタンについて

    こんにちは。ラジオボタンについて質問させてください。 <input type="radio" name="area" value="all" onClick="area.value = 'all'" checked>ALL<br> <input type="radio" name="area" value="a" onClick="area.value = 'a'">A<br> <input type="radio" name="area" value="b" onClick="area.value = 'b'">B<br> というHTMLを記述しました。 画面が表示された後にラジオボタンをチェックして実行(別個作成)すると うまく動作するのですが、チェックボタンをチェックしずに (デフォルトの'ALL'選択のまま)実行するとうまくいきません。 どのようにすればうまく動作するのでしょうか?

    • ベストアンサー
    • 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">パナップル 出来る方法などご存知の方おられましたら幸いです。