ダウンロードする – リンク://wp-content/uploads/2010/06/Struts2-Select-DropDown-Box-Example.zip[Struts2-Select-DropDown-Box-Example.zip]

Struts 2では、

<s:select>

タグを使用してHTMLドロップダウンボックスを作成できます。

    <s:select label="What's your favor search engine"
        headerKey="-1" headerValue="Select Search Engines"
        list="searchEngine"
        name="yourSearchEngine"/>

その結果、次のHTMLコード…​

<td class="tdLabel">
   <label for="resultAction__yourSearchEngine" class="label">
       What's your favor search engine:
   </label>
</td>
<td>
<select name="yourSearchEngine" id="resultAction__yourSearchEngine">
    <option value="-1">Select Search Engines</option>
    <option value="google.com">google.com</option>
    <option value="bing.com">bing.com</option>
    <option value="yahoo.com">yahoo.com</option>
    <option value="baidu.com">baidu.com</option>
</select>
</td>

構文は自明ですが、 ”

headerKey

“と ”

headerValue

“です。 ”

headerKey

“はドロップダウンリストの最初の項目のキーで、 ”

headerValue

“はドロップダウンリストの最初の項目の値式です。

ドロップダウンボックスのデフォルト値を自動的に選択するには、このartcleを読んでください:

Struts 2

<s:select>


1.アクション

選択されたドロップダウンボックスオプションを生成して保持するActionクラス。 +

SelectAction.java

package com.mkyong.common.action;

import java.util.ArrayList;
import java.util.List;

import com.opensymphony.xwork2.ActionSupport;

public class SelectAction extends ActionSupport{

    private List<String> searchEngine;

    private String yourSearchEngine;
    private String yourMonth;

    public String getYourMonth() {
        return yourMonth;
    }

    public void setYourMonth(String yourMonth) {
        this.yourMonth = yourMonth;
    }

    public List<String> getSearchEngine() {
        return searchEngine;
    }

    public void setSearchEngine(List<String> searchEngine) {
        this.searchEngine = searchEngine;
    }

    public String getYourSearchEngine() {
        return yourSearchEngine;
    }

    public void setYourSearchEngine(String yourSearchEngine) {
        this.yourSearchEngine = yourSearchEngine;
    }

    public String getDefaultSearchEngine() {
        return "yahoo.com";
    }

    public SelectAction(){

        searchEngine = new ArrayList<String>();
        searchEngine.add("google.com");
        searchEngine.add("bing.com");
        searchEngine.add("yahoo.com");
        searchEngine.add("baidu.com");
    }

    public String execute() {
        return SUCCESS;
    }

    public String display() {
        return NONE;
    }

}

2.結果ページ



<s:select>

“タグを使用してドロップダウンボックスをレンダリングし、JavaリストおよびOGNLリストを使用して選択オプションを設定します

  • select.jsp **

<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
</head>

<body>
<h1>Struts 2 drop down box example</h1>

<s:form action="resultAction" namespace="/">

<h2>
    <s:select label="What's your favor search engine"
        headerKey="-1" headerValue="Select Search Engines"
        list="searchEngine"
        name="yourSearchEngine"
        value="defaultSearchEngine"/>
</h2>

<h2>
    <s:select label="Select a month"
        headerKey="-1" headerValue="Select Month"
        list="#{'1':'Jan', '2':'Feb', '3':'Mar', '4':'Apr'}"
        name="yourMonth"
        value="2"/>
</h2>

<s:submit value="submit" name="submit"/>

</s:form>

</body>
</html>

  • result.jsp **

<%@ taglib prefix="s" uri="/struts-tags" %>
<html>

<body>
<h1>Struts 2 drop down box example</h1>

<h2>
  Favor search engine : <s:property value="yourSearchEngine"/>
</h2>

<h2>
  Selected month : <s:property value="yourMonth"/>
</h2>

</body>
</html>

3. struts.xml

すべて一緒にリンクする〜

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>

 <constant name="struts.devMode" value="true"/>

<package name="default" namespace="/" extends="struts-default">

   <action name="selectAction"
         class="com.mkyong.common.action.SelectAction" method="display">
    <result name="none">pages/select.jsp</result>
   </action>

   <action name="resultAction" class="com.mkyong.common.action.SelectAction">
    <result name="success">pages/result.jsp</result>
   </action>
  </package>

</struts>

リファレンス

ドキュメンテーション]