![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.3ベストアンサー
- 回答日時:
>request.setAttribute("optionsYear",[表示させたい値以外のそのほかの値の配列変数]);
表示させたい値を配列に含めないといけないのではないですか?
そうしないとoptionとして出力されませんよね。
struts1.3.10をダウンロードして動かしてみたところ、初期選択することができました。
ブランクプロジェクトをちょこっと変更しただけなのでbrave9977さんの画面遷移とは違うと思いますが、
<html:select>と<html:options>の動きに影響はないはずなので。
ちょっと長くなりますが下記にソースを記載します。
--A.java--
public class A extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
B b = (B)form;
b.yearValue = "2010";
request.setAttribute("optionsYear", new String[]{"2008","2009","2010","2011"});
return mapping.findForward("hoge");
}
}
--B.java--
public class B extends ActionForm {
public String yearValue;
public String getYearValue() {
return yearValue;
}
public void setYearValue(String yearValue) {
this.yearValue = yearValue;
}
}
--Welcome.jsp--
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
<html:html>
<head>
<html:base/>
</head>
<body bgcolor="white">
<html:select name="BeanName" property="yearValue" >
<html:options name="optionsYear" labelName="optionsYear"/>
</html:select>
</body>
</html:html>
--struts-config.xml--
<form-beans>
<form-bean name="BeanName" type="test.B" />
</form-beans>
<action-mappings>
<action
path="/Welcome"
type="test.A"
name="BeanName">
<forward name="hoge" path="/pages/Welcome.jsp"></forward>
</action>
</action-mappings>
--表示時のHTMLソース--
<html>
<head>
<base href="http://localhost:8083/struts-blank-1.3.10/pages/ …
</head>
<body bgcolor="white">
<select name="yearValue"><option value="2008">2008</option>
<option value="2009">2009</option>
<option value="2010" selected="selected">2010</option>
<option value="2011">2011</option></select>
</body>
</html>
A.javaの
b.yearValue = "2010";
を
b.yearValue = "2009";
とした場合には、ちゃんと2009が選択された状態で表示されました。
No.2
- 回答日時:
<html:options>に該当するvalueを持った選択肢が存在しないのではないですか?
HTMLのソースで確認してみてください。
strutsを動かせる環境が手元にないので確認できないのですが、
この記述だと各optionのvalueが空になってたりしませんか。
また、質問の際にはJDKやOSなどの環境を具体的に書いた方がいいですよ。
strutsもバージョンによって記述内容が違いますから。
参考URL:http://struts.wasureppoi.com/taglib/02_select_li …
ありがとうございます。
環境は
JDK:Version 6 Update 22
OS:WindowsXP
Struts:1.3.10
です。
実行結果なのですが、
<select name="yearValue">
<option value="2005">2005</option>
<option value="2006">2006</option>
<option value="2007">2007</option>
<option value="2008">2008</option>
<option value="2009">2009</option>
<option value="2010">2010</option>
<option value="2011">2011</option>
<option value="2012">2012</option>
<option value="2013">2013</option>
となっています。
この時は「2010」を選択しているので、
optionsにはあるはずです。
下記のPGに間違いは、なかったのでしょうか?
No.1
- 回答日時:
初期選択する値を、
<html:select>タグのvalue属性か、
ActionFormBeanの該当プロパティに設定すればいいのではないでしょうか。
回答ありがとうございます。
>ActionFormBeanの該当プロパティに設定すれば・・・
を、試してみたのですが、表示されませんでした。
一部抜粋してみたので、何か間違っているところがあれば、
ご指摘ください。
よろしくお願いいたします。
【A.java】※Actionクラス
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)throws Exception{
B beanForm = (B)form;
beanForm.yearValue = "表示させたい値";
request.setAttribute("optionsYear",[表示させたい値以外のそのほかの値の配列変数]);
return mapping.findForward("succsess");
}
【B.java】※beanクラス
public class B extends ActionForm{
public String yearValue;
/**
* @return yearValue
*/
public String getYearValue() {
return yearValue;
}
/**
* @param yearValue セットする yearValue
*/
public void setYearValue(String yearValue) {
this.yearValue = yearValue;
}
}
【A.jsp】
<html:select property="yearValue" >
<html:options name="optionsYear" labelName="optionsYear"/>
</html:select>
【struts-config.xml】
<form-beans>
<form-bean name="BeanName" type="jp.co.XXXX.XXXX.XXXXX.B" />
<form-beans/>
<action
attribute="BeanName"
input="/pages/Z.jsp"
name="BeanName"
path="/action"
type="jp.co.XXXX.XXXX.XXXXX.A"
scope="request"
validate="false">
<forward name="succsess" path="/XXXXXX/XXXXXX/A.jsp" />
</action>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- マウス・キーボード Logicool optionsについての質問です。 私が使っているレシーバーはUnifyingです 1 2022/09/22 23:39
- Access(アクセス) Access DTPickerの初期表示月を変えたい 1 2022/08/02 08:55
- 英語 However, when we have the liberty to choose from m 6 2022/09/21 15:41
- Illustrator(イラストレーター) アイビスペイント、原稿作成について 1 2023/07/14 03:01
- Access(アクセス) アクセス where句を使用して複数条件抽出をするには 2 2022/08/29 13:24
- その他(OS) raspberry pi のスピーカ音出ない問題 2 2022/07/24 09:03
- SQL Server DBのテーブルの設計ができず困っています。 2 2023/06/29 16:43
- JavaScript 【jquery】EasyUIのSubGridにMySQLのテーブルデータを表示&編集にしたい 5 2022/05/02 13:10
- 先物取引 日経225の先物戦略について 2 2023/06/04 12:42
- JavaScript セレクトを全て選択されていないと、文字によるエラーメッセージを表示させるコードを調べています 2 2023/06/22 15:48
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
フォーム上で押されたボタンに...
-
「<c:forEach タグが終了し...
-
リクエストに応じたselectedの...
-
フォームで同じ複数のnameで違...
-
jspファイルで注文フォームの合...
-
int型の内容をbyteの配列にコピー
-
StrutsでPOSTのデータ(リクエ...
-
jspでjavascript関数へ引数を渡...
-
struts-config.xmlの設定
-
JavaとSQLServer2000の接続につ...
-
EL式 true falseを表示
-
Struts2のタグについて
-
JAVAのチェックボックスの扱い...
-
HashMapで、valueにマッピング...
-
JSPとサーブレット間での画面遷...
-
JSPでのサブミット判定
-
<bean:write.../>がエラーを出す
-
struts iterateタグ内のデータ...
-
Strutsでの入力データチェック...
-
ラジオボタンの選択肢をサーブ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
フォーム上で押されたボタンに...
-
「<c:forEach タグが終了し...
-
リクエストに応じたselectedの...
-
JSPでのリストボックス表示
-
フォームで同じ複数のnameで違...
-
jspファイルで注文フォームの合...
-
javaでDBから取得したデータのJ...
-
ラジオボタンの選択肢をサーブ...
-
int型の内容をbyteの配列にコピー
-
EL式 true falseを表示
-
JSPとサーブレット間での画面遷...
-
Strutsで、どのRadioボタンが選...
-
strutsを使用したjspでjavascri...
-
JSPでのサブミット判定
-
動的に作成したラジオボタンの...
-
Struts2のタグについて
-
htmlからjspへ処理を移す方法が...
-
jspの文字化けの解消方法を教え...
-
JSP+Servletで終了ボタン
-
StrutsでPOSTのデータ(リクエ...
おすすめ情報