如何更改显示<struts:checkboxlist =“”> </struts:>项目的外观

时间:2010-07-05 06:18:33

标签: struts2

在jsp页面的Struts2应用程序中,我有一个用户可以选择他想要的选项,我使用了struts:像这样的复选框

<s:checkboxlist name="cust.communityList" label="Are You Inteterested In"  
    list="{'WebSpere Consultuing','Portal Consulting','SOA/BPM Consulting','Content Management',
       'DataPower Consulting','Information Management Services','Application Monitoring','Application Security',
       'Migration to WebSphere','Application Testing','WebSphere Version Upgrade','JAM/Panther Consulting','IBM Software Procurement','XMLink/Progressions','Other'}" />

工作正常。但是在浏览器中它看起来并不好,它一个接一个地依次排列列表元素,然后在下一行....

我想要显示它们,第一行显示2个,第二行显示接下来的2个项目等等......

如何以这种方式显示复选框列表项目?

2 个答案:

答案 0 :(得分:1)

好的,我刚刚通过自定义模板方法执行此操作。它似乎完成了工作。查看文档,了解如何将原始checkboxlist FreeMarker css代码拉入您自己的项目中。总之,将struts2.core.jar/template/simple/checkboxlist.ftl拉入您自己的webapp / template目录并进行修改。我做了以下更改:

1:在文件的顶部,迭代器标记所在的位置,我在之前和之后添加了以下行(不是iteratorline):

<table><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
<@s.iterator value="parameters.list">
    <#if itemCount % 3 = 0 > 
        <tr>
    </#if>
    <td> 

2:在文件的末尾,迭代器结束的地方,我添加了:

<#if itemCount % 3 = 0 > 
    </tr>
</#if>
</@s.iterator>
</table>

3:就是这样。实际上,该教程告诉您需要了解的内容,这只是破解FreeMarker代码的问题。

答案 1 :(得分:0)

您可以更改复选框的主题,也可以扩展主题,然后进行更改。

在/template/simple/checkboxlist.ftl中查找基本复选框列表模板。

有关覆盖模板的信息,请参阅:http://struts.apache.org/2.0.11/docs/template-loading.html