我是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
”是dto
的数组列表,并在下面的操作中设置
ActionContext.getContext().getValueStack().set("listOfDtos", listOfDtos);
现在,当用户选择要删除的任何行时,我希望能够首先在Action中检索此dtos列表并迭代它们以检查dtos
中哪个属性具有“{{1 “设置为true。
“select
”是dto中String类型的属性。
如何做到这一点?还将如何在“行动”中提供“select
”。
答案 0 :(得分:0)
你可以使用它....
<s:iterator var="something" id="something" value="something" status="ListStatus">
<s:if test="#ListStatus.index == 0">
<tr style="border: 1px solid black;" bgcolor="lightgray" height="20">
<td align="center" style="border: 1px solid black;"><s:checkbox id ="itemToDelete1" name="checkAll" onchange=" check(main_form.fileNames,this.checked)"/></td>
<td align="center" style="border: 1px solid black;"><strong>INSTANCE ID</strong></td>
<td align="center" style="border: 1px solid black;"><strong>FILE NAME</strong></td>
<td align="center" style="border: 1px solid black;"><strong>SUB DT</strong></td>
<td align="center" style="border: 1px solid black;"><strong>PROCESS STATUS</strong></td>
</tr>
</s:if>
<tr style="border: 1px solid black;">
<td align="center" style="border: 1px solid black;"><s:checkbox id ="itemToDelete" name="fileNames" fieldValue="%{#fileDetails.fileName}"/></td>
<td style="border: 1px solid black;"><s:property value="#fileDetails.fileInstId"/></td>
<td style="border: 1px solid black;"><s:property value="#fileDetails.fileName"/></td>
<td style="border: 1px solid black;"><s:property value="#fileDetails.dataOfSubmission"/></td>
<td style="border: 1px solid black;"><s:property value="#fileDetails.fileProcessStatus"/></td>
</tr>
</s:iterator>
我已经使用过它并且工作得很好....
如您所见,如果选中标题复选框,则会选中所有复选框。
现在这是你的动作类fileDetails.fileName中需要的字段
我希望你能得到一些帮助......
答案 1 :(得分:-1)
您正在执行的功能是在选中行的复选框时删除特定行吗?
您可以尝试在行上放置一个href,其变量引用某行中的数据。
E.g。
<a href="deleteuser.action?id=<s:property value="id"/>&action=delete"/>delete </a>
这是我正在使用的代码。