- - PR -
リストボックスの初期値について
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2005-10-11 18:03
JAVAの初心者で申し訳ないのですが、ご教授願いたいと思います。
下記のようにして、日付のリストボックスを複数作成するようにしました。 リストボックスの初期値をリストボックスごとに設定して 画面に出すことは可能なのでしょうか? 例えば、 上から1番目のリストボックスは0番目の項目を初期値として選択されている。 上から2番目のリストボックスは4番目の項目を初期値として選択されている。 のようにです。 なお、下記については試しました。 1.<html:select の valueで指定する。→全部のリストボックスが同じ初期値になってしまいました。 2.ActionFormで設定する。→Actionにて、FORMのメンバのdate[]に初期値を設定したのですが、dateの最後の項目が初期値としてブラウザに表示されました。 date[0]="2005/10/11" date[1]="2005/10/12" date[2]="2005/10/13" 全部のリストボックスが"2005/10/13"となってしまいました。 *** Struts-Config.xml *** <action path="/newOdr" type="action.NewOdrAction" name="NewOdrForm" scope="request" validate="false"> <forward name="success" path="xxx.jsp"/> </action> *** Action(NewOdrAction) *** request.setAttribute("bean.commodity",objCommodityAry.toArray()); request.setAttribute("bean.date",objDateAry.toArray()); *** Action-Form *** public class NewOdrForm extends ActionForm { private String[] name; private String[] date; public void setName(String[] name) { this.name = name; } public String[] getName() { return name; } public void setDate(String[] date) { this.date = date; } public String[] getDate() { return date; } } *** jsp(xxx.jsp) *** <html:form action="/bbbb"> <logic:iterate id="commodity" name="bean.commodity" scope="request"> <tr class="body"> <td height="9"> <html:select property="date"> <html:optionsCollection name="bean.date" value="key" label="date" /> </html:select> </td> </tr> </logic:iterate> <input type="submit" value="xxx" name="xx" class="submit"> </html:form> |
|
投稿日時: 2005-10-11 18:36
いのきです。
「リストボックス名.selected = true」か「selectIndex」を使用すればいけますよ。 |
|
投稿日時: 2005-10-12 15:58
いのきさん返信ありがとうございました。
自分なりに試した結果、 下記のようにして成功しました。 1.アクションフォームのメンバの配列を、イテレータのカウンタで参照するようにしました。 <bean:define id = "キー" name= "アクションフォーム" property="<%= "name[" + idx + "]" %>" type="java.lang.String"/> 2.プルダウンメニューのVALUE属性へ、上記1で取得した値を渡すようにしました。 <html:select property="name" value="<%= キー %>"> <html:form action="/bbbb"> <logic:iterate id="commodity" name="bean.commodity" scope="request" indexId="idx"> <tr class="body"> <td height="9"> <html:select property="date"> <html:optionsCollection name="bean.date" value="key" label="date" /> </html:select> </td> <td height="9"> <bean:define id = "キー" name= "アクションフォーム" property="<%= "name[" + idx + "]" %>" type="java.lang.String"/> <html:select property="name" value="<%= キー %>"> <html:optionsCollection name="bean.commodity" value="key" label="name" /> </html:select> </td> <td height="9">¥0</td> <td height="9"><html:text property="<%= "num[" + idx + "]" %>" /></td> <td height="9">¥0</td> </tr> </logic:iterate> <input type="submit" value="xxx" name="xx" class="submit"> </html:form> |
1