- - PR -
MVCモデルで選択された行のテキストデータの取得について
1
| 投稿者 | 投稿内容 |
|---|---|
|
投稿日時: 2005-03-15 12:51
いろいろお世話になっております。
現在、 Tomcat5.5.7 JDK1.5(5.0) Eclipse3.0 で開発をしているのですが、 以下の手法が分からないので、どなたかご教授下さい。 1)DBからデータを取得し、それを件数分テーブルで表示(<Tr>〜</tr>) ⇒コーディング完了 2)テーブル全体をformで囲む。 そして、各行の先頭にチェックボックスを設け、 テキストボックスなどで、行内の情報を変更可能にする。 ⇒コーディング完了 3)それらをFormBeans(ActionFormクラス)に格納し、選択された行に対するデータのみを編集する。 ⇒コーディング?? 初め、各行のテキストボックスの名前に引数として <% out.println("<input type='text' name='txt_" + i + "' value='" + vali + "'>"); %> みたいな感じで、nameの後ろに引数のようにして、処理をすれば、 大丈夫かと考えていたのですが、 よく考えたら、事前にgetterやsetterメソッドを用意して置かねばならず、 可変であるテキストボックスに対して、事前に設定などできないじゃないか、 と思いました。 実際、疑問点として、ここにあげることが 妥当かどうかと考えましたが、HTMLか、ActionFormクラスか どこを変更するとやりたいことがうまくいくのか 見えきらなかったので、ここにあげさせて頂きました。 HttpServletのgetAttributeを使用すれば、うまくいくとは考えていますが、 そうすると、validateメソッドなどが使用できなくなるし、 ActionFormの処理が複雑になり、 本来のMVCモデルの発想から逸脱しているような気がします。 どなたか良いアイデェアをお持ちでしたら、お教え下さい。 よろしくお願いします。 |
|
投稿日時: 2005-03-15 13:51
http://wiki.apache.org/struts/StrutsCatalogLazyList
を参照してください。リストで受け取る方法について記載されています。 |
|
投稿日時: 2005-03-17 13:14
ふーばー様
回答、ありがとうございました。 上記のURLのページを参照して、Textは配列化できたのですが、 SelectBoxはTLDなどの制約によりできないと言うエラーが 出てしまうため、(Strutsのバージョンの問題?!) 配列化を全てにおいて行うことを断念しました。 HPにはSelectBoxも使用可能みたいなことが書いて歩きがするのですが、 Textしか、うまく動作せず、無理やり"a.b[1]"と言う 記述をしてみたりしたのですが、 ActionForm側でうまく認識はしてくれないようで(当然?!)、 SlectBoxなどは先に記述したActoinクラスで 1)HttpServletRequestクラスから情報を抜き出し、 1)ActionFormに情報を挿入し、 1)処理BeansでActionFormの情報をそれぞれ条件通りに処理する と言う記述にしました。 また、時間を見つけてきちんとした解決策を見つけてみたいと思います。 ありがとうございました。 |
1
