我正在使用 Struts2 并尝试将系统中的数据填充到复选框列表中, 提交时,我会收到一个字符串数组,其中包含所选项目的“id” [“8”,“2”,“5”]
但是如果我预先使用相同的字符串数组预先填充该字段 - 没有任何内容被勾选,我做错了什么?
定义如下:
<html:checkboxlist list="userroleslist" listKey="id" listValue="description" name="userroleresponse" label="User Roles"/>
userroleslist 包含包含完整选项列表的列表 id 是我使用的值 和描述字段作为显示的标签(这一切都有效) userroleresponse 是一个字符串数组,在勾选并提交时返回为 ["8","2","5"],但在预填充时不会勾选屏幕上的框,
最佳答案
使用value
属性设置要打开的值。在这里,如果您的操作类中有一个带有签名 String [] getUserroleresponse()
的方法,请按如下方式更改您的标记:
<html:checkboxlist list="userroleslist" listKey="id" listValue="description" name="userroleresponse" label="User Roles" value="userroleresponse"/>
此外,请确保listKey的数据类型应与提供的值数组匹配。例如,如果 id
的类型为 String
,则值数组应为 String []
类型。
您可以引用以下链接的示例:
http://www.mkyong.com/struts2/struts-2-scheckboxlist-multiple-check-boxes-example/
关于java - 如何使用struts2预填充复选框列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7977417/