Strutsリファレンス(逆引き)

Strutsリファレンス
 
Web struts.wasureppoi.com
セレクトボックスを動的に表示する2<html:select><html:options>
スポンサード リンク

セレクトボックスを動的に表示するには、<html:optionsCollection>タグを使用する他に、<html:options>タグを使用する方法があります。
この方法では、セレクトボックスに使用するvalue値とラベル名は、Bean内のそれぞれの配列に設定します。

JSP使用例

<%@ page pageEncoding = "Shift_JIS" %>
<%@ page contentType="text/html; charset=Shift_JIS" %>
<%@ taglib uri="/tags/struts-html" prefix="html" %>

<html><body>

<html:form action="/select_list2_view" >

<html:select property="stringData" >
  <html:options
       name="SelectList2Form"
        property="id"
       labelName="SelectList2Form"
       labelProperty="name"/>
</html:select>

<html:submit property="submit" value="送信" />
</html:form>

</body></html>


<html:options>タグ 
  name属性 : value値の配列が格納されているBean名
  property属性 : value値の配列が格納されているプロパティ
  labelName属性 : ラベル表示名の配列が格納されているBean名
  labelProperty属性 : ラベル表示名の配列が格納されているプロパティ


HTMLソース&画面イメージ

<html><body>

<form name="SelectList2Form" method="post" action="/Struts1.2/do/select_list2_view">

<select name="stringData"><option value="01">北海道</option>
<option value="02">東北</option>
<option value="03">関東</option></select>

<input type="submit" name="submit" value="送信">
</form>

</body></html>

 


スポンサード リンク

アクションクラス

   public ActionForward execute(ActionMapping mapping,
                      ActionForm form,
                      HttpServletRequest request,
                      HttpServletResponse response) {

    // 入力フォームを取得
    DynaActionForm inform = (DynaActionForm)form;

    // ラジオボタンチェックデータの取得
    String stringData = (String)inform.get("stringData");
    System.out.println("stringData:" + stringData);

    // セレクトボックスのvalue値を配列に設定
    String[] id = {"01","02","03"};
    inform.set("id",id);

    // セレクトボックスのラベル表示名を配列に設定
    String[] name = {"北海道","東北","関東"};
    inform.set("name",name);


    return mapping.findForward("success");
  }

セレクトボックスで使用する、value値とラベル名をそれぞれの配列に設定しています。


アクションフォーム

<form-bean
  name="SelectList2Form"
  type="org.apache.struts.validator.DynaValidatorForm" >
   <form-property
     name="stringData"
     type="java.lang.String" />
   <form-property
     name="id"
     type="java.lang.String[]" />
   <form-property
     name="name"
     type="java.lang.String[]" />
</form-bean>



スポンサード リンク


htmlタグの種類
htmlタグを出力する<html:html>
テキストボックスを表示する<html:text>
テキストエリアを表示する<html:textarea>
パスワード入力ボックスを表示する<html:password>
チェックボックスを表示する<html:checkbox>
複数選択可能なチェックボックスを表示する<html:multibox>
ラジオボタンを表示する<html:radio>
ラジオボタンを動的に表示する<html:radio>
セレクトボックスを表示する<html:select、option>
セレクトボックスのラベルをメッセージリソースから表示する<html:select>
複数選択可能なセレクトボックスを表示する<html:select、option>
セレクトボックスを動的に表示する<html:select、optionsCollection>
セレクトボックスを動的に表示する1<html:select、options>
セレクトボックスを動的に表示する2<html:select、options>
hiddenを出力する<html:hidden>

カスタムタグへ
忘れっぽいエンジニアのJakarta Strutsリファレンス TOPへ