使用标签在Struts2中动态创建列表

3
ArrayList<Integer> list = new ArrayList<Integer>();
list.add(2012);
list.add(2013);
list.add(2014);
list.add(2015);

我们能否使用Struts2标签来实现与上述相同的功能呢?也许可以通过使用。
<s:set name="myList" value={somedynamic values} />

实际上,我想使用Struts2标签在JSP页面上创建一个10年数字列表。

2个回答

3

关于您的问题,答案是肯定的,但在jsp页面中创建10年的数量并不是一个好主意。

然而,可以通过动态方式使用arrylist实现此功能。

<s:select label="Years" headerKey="-1" headerValue="Select Years" list="list"   name="your desire name" />

在列表属性的位置,您需要提供ArrayList变量,在您的情况下它是list

<s:select ---- list =“your array list variable”--------- />

并且您必须在struts.xml中定义此操作名称 例如:

<action name="yourarrylistvariable" class="your class" method="your method">
           <result name="success">your jsp page</result>
</action>

这里是静态使用ArrayList,您需要更改列表值。

<s:select label="Years" headerKey="-1" headerValue="Select Years" 
list="#{'2000':'2000', '2013':'2013',.....}" name="your desire name" />

更多信息,请参考此链接 struts2 选择框示例


1
当然可以,由于OGNL的存在,您可以像这样创建列表:
<s:set var="myList" value="{2012,2013,2014,2015}" />

请查看此链接


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接