• 締切済み

【struts】2つのselectの連動

struts初心者です。 2つのselectで、一つ目のselectが選択されたら、関連する内容のデータを、もう一つのselectに表示させるようにしたいです。 どうすればできるのでしょうか?javascriptとか使用するんですかね??

みんなの回答

  • PED02744
  • ベストアンサー率40% (157/390)
回答No.2

どちらが簡単とかそういう問題ではありません。 要求されている機能を満たすように、製作する必要があります。 たとえば、1つ目のSELECT対象が100件あって、2つ目のSELECT対象がそれぞれ100件あるとしたら、 JavaScript「だけ」では事実上無理(10000件分用意しなくてはいけない)ということは、 お分かりになるかと思います。 なので、要求されている機能と仕様から、判断して決める必要があります。 「どっちが簡単?」などと聞かれている状況では、サンプルソースを提示するのは、無理なんじゃないかと思います。

L_L_DELLL
質問者

補足

そうですね。すみません。 件数を考えたら、サーバでやるほうがいいみたいです。

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

こんにちは。 1.JavaScriptを使用して行う 2.サーバ側の処理で行う と、クライアントで行うかサーバで行うかになります。 1の場合はそのページを読み込む際に1番目のデータと2番目のデータを全て読み込み、JavaScriptにて動的に変更します。 2の場合は1番目のデータのみ読み込んでおき、1番目が選択された後にサーバへ選択された値を送信し、それに関係する2番目のデータを取得して表示してあげます。

L_L_DELLL
質問者

補足

rs.getString("CD")のデータが同じデータを連動させて表示させたいんですが、サーバ側とJavaScriptだったらどちらが簡単できるのでしょうか? また、簡単でもいいので参考ソースを教えていただければ嬉しいです。 図々しくてすみませんが・・・ ResultSet rs = state.executeQuery(sql); //一つ目のデータ master.setOffice_id(rs.getInt("ID")); master.setArea_cd(rs.getString("CD")); master.setOffice_name(rs.getString("NAME")); ret.add(master); //二つ目のデータ master.setOffice_id(rs.getInt("dataID")); master.setArea_cd(rs.getString("CD")); master.setOffice_name(rs.getString("VALUE")); ret.add(master);

関連するQ&A