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

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

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

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_list_view" >

<html:select property="stringData" >
  <html:options collection="listData"
           property="id"
           labelProperty="name"/>
</html:select>

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

</body></html>

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


HTMLソース&画面イメージ

<html><body>

<form name="HtmlForm" method="post" action="/Struts1.2/do/select_list_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);

    // 動的なラジオボタンのデータの生成
    List<UserData> list = new ArrayList<UserData>();

    UserData data1 = new UserData();
    data1.setId("01");
    data1.setName("北海道");

    UserData data2 = new UserData();
    data2.setId("02");
    data2.setName("東北");

    UserData data3 = new UserData();
    data3.setId("03");
    data3.setName("関東");

    list.add(data1);
    list.add(data2);
    list.add(data3);

    request.setAttribute("listData", list);
 
    return mapping.findForward("success");
  }

セレクトボックスで使用する、value値とラベル名を設定したUserDataオブジェクトを、java.util.Listに格納しています。


スポンサード リンク


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へ