struts2的复选框返回“假”和零列出
问题描述:
我在一个表的窗体上显示多个记录。每个表中的第一列是一个复选框,用于删除标志记录。struts2的复选框返回“假”和零列出<String>
如果复选框被选中,则返回用的复选框在List<String>
关联回形式的字符串值。如果未选中复选框,则列表将设置为空。
能正常工作是没有记录,或者有多个记录。但是如果有一条记录,当没有选中复选框时,值'false'返回到List<String>
而不是null。
我已阅读,人们已经讨论设置复选框拦截“uncheckedValue”为空,但我一直没能成功地做到这一点还是找到如何做到这一点的例子。这是如何完成的?
在我的行动....
private List<String> idsToDelete;
public List<String> getIdsToDelete() {
return idsToDelete;
}
public void setIdsToDelete(List<String> idsToDelete) {
this.idsToDelete = idsToDelete;
}
在我的JSP ...
<s:iterator value="adjustmentData" status="rowStatus">
<tr>
<td>
<s:checkbox fieldValue="%{transactionId}"
name="idsToDelete"
class="deleteCheckbox">
</s:checkbox>
如果没有数据,idsToDelete = NULL
如果有记录和复选框选中,idsToDelete = [00200027,00200028,等]
如果存在多个记录和没有复选框ç hecked,idsToDelete = NULL
如果有一个记录和复选框未选中,idsToDelete = [虚假]
答
创建一个隐藏字段解决的问题。
<s:hidden name="__checkbox_idsToDelete"/>
https://stackoverflow.com/q/16460923/1700321 –