如何从displaytag中的struts2复选框获取复选框值到action类

时间:2009-04-28 14:03:01

标签: java struts2 displaytag

我正在使用 struts2 应用程序,我正在使用 displaytag 进行分页支持。

现在我想要一个表格中每一行的复选框,我正在这样做。

<display:table name="countryList" export="true" class="table" id="countryList" pagesize="${selectedPageSize}" decorator="org.displaytag.decorator.TotalTableDecorator" >        
    <display:column property="id"  title="ID" paramId="id" />
    <display:column property="name" title="Name"  sortable="true"/>
    <display:column title="Delete All">
        <s:checkbox  id="check" name="check" fieldValue="%{#attr.countryList.id}" theme="simple"/>
    </display:column>
</display:table>  

<s:submit action="deleteall"  value="DeleteSelected" />

直到这里工作正常。现在我想删除通过复选框检查的所有国家/地区。

为此我想要检查的国家/地区的ID。因为我必须获取数组中的值。

问题是如何从jsp发送值然后在动作类

中获取它

2 个答案:

答案 0 :(得分:2)

如果你将一个String []添加到与你的复选框名称相同的动作中,并通过访问者(getters / setters)公开它,struts 2应自动填充它。

答案 1 :(得分:0)

我就是这样做的。

  1. 代替所有id列的'id',附加一个序列号,以便每个id都有一个唯一的名称,例如'id1','id2'等

  2. 创建一个拦截器,收集前缀为'id'的参数值

  3. 配置您的行动以使用拦截器

  4. 我的strut fu生锈了。可能有更好的方法。