我是Struts 2的新手,请帮我解决以下问题
我在Jsp中使用struts2标签有一个表,我想做的就是在动作类中检索所选(已检查)表行的值。
请让我知道如何实现它。
<s:iterator value="listOfDtos" status="stat">
<tr>
<td><s:checkbox name="delete" value="select" /></td>
<td><s:property value="FirstName"/></td>
<td><s:property value="LastName"/></td>
</tr>
</s:iterator>
<s:submit id="delete" value="delete"/>
}
“listOfDtos
”是一个数组列表od dto,并在下面的操作中设置
ActionContext.getContext().getValueStack().set("listOfDtos", listOfDtos);
现在,当用户选择要删除的任何行时,我希望能够首先在Action中检索此dtos列表并迭代它们以检查哪个dtos具有属性“select”设置为true。 select“是dto中String类型的属性。
如何做到这一点?如何在行动中提供“listOfDtos”。
答案 0 :(得分:0)
我不确定我是否理解了你的问题。但是这里几乎没有什么投入。
没有必要执行ActionContext.getContext().getValueStack().set("listOfDtos", listOfDtos);
,因为这会将您的操作类与框架紧密绑定。我建议您在操作类中创建一个名为listOfDtos
的属性作为ArrayList,并提供其getter和setters,framework会将你的数组列表放在value-stack中。
您需要为复选框提供一些唯一值,您可以根据这些值在操作类中检查已选择的ID,因为您可以根据ID对ArrayList执行任何所需的操作。