• 締切済み

JSのリクエストからサーブレットに渡されるデータについて。

現在、JSP+サーブレットでアプリを作成しています。 質問ですが、JSPにあるセレクトメニューの中身全てをサーブレットで受け取ることはできるのでしょうか? <select name="Kouba" size="1"> <option value=10>A工場</option> <option value=11>B工場</option> <option value=12>C工場</option> <option value=13>D工場</option> </select> 上のようなセレクトメニューがあった場合、submitした場合に、サーブレット側で、 String 工場 = request.getParameter("Kouba"); とやれば、選択されていたデータは取得できます。 セレクトメニューの中身全部を取得したい場合はどのようにすればよいのでしょうか? よろしくお願いします。

みんなの回答

  • yuji
  • ベストアンサー率37% (64/169)
回答No.2

普通こういう場合は、選択肢となるデータをデータベースに登録しておきます。 Servlet側でDBから選択肢となるデータを取得し、JSPでも同じデータを見るようにすればいいだけです。 (私のところではまず、ServletでDBアクセスして、選択肢を取得しておき、  それをJSPに渡しています。JSPから直接DBアクセスはしていません。) DBがもしなくても、選択肢をServlet側で用意するような作りに すればいいのでは?

zima_id
質問者

お礼

私の書き方がまずかったのですが、実は現状で、yujiさんが書いてくださったようにやってはいます。 具体的にやりたかったのは、こういうコンボボックスでどうにかして順序を保持し、表示します。 HTML側で中身の順序を変えたら、その順番をデータベースに保持するみたいなことをやりたかったのですが、こういうやり方では難しそうですねぇ。。。 ご回答ありがとうございました。

すると、全ての回答が全文表示されます。
  • tajiri
  • ベストアンサー率45% (5/11)
回答No.1

submitした段階で選択されていないものは サーバに送られていないので取得は無理だと思いますよ。 (そういう処理をするのがselectの役目ですべて取れたら selectしていないと思うのですが・・・) 最初にhtml or JSPで各項目の値を クライアント側に渡しているのだったらそこからとるか すべてのselectの値をhiddenで渡してやれば実現できるかと。 (あんまりきれいじゃないですけど)

zima_id
質問者

お礼

そうですか、やっぱり無理なんですか。 hiddenは考えたんですが、中身が多いとえらいことになるのでやめました(笑) どうもありがとうございました。

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

専門家に質問してみよう