作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
大家好,我正在为 Struts2 应用程序的 JSP 中的字段做复选框列表。
JSP 中的代码:
<s:checkboxlist list="subjectList" name="subjects"/>
实战类:
I have used some if/else condition to get the selected checkbox values in Action class as follows.
if(this.getSubjects().trim().contains("CSC"))
subject.setCSC("true");
else
subject.setCSC("false");
if(this.getSubjects().trim().contains("ECE"))
subject.setECE("true");
else
subject.setECE("false");
在数据库中存储输出对象subject。它工作正常。在表中有这样的字段 CSC(true/false), ECE(true/false)。
现在我想像数据库值一样保留复选框列表选项。如果该字段为真,则它必须在 SELECTED 中,如果该字段为假,则它在 Jsp 中应该为 UNSELECTED。
那么如何从数据库值中保留复选框列表中的值。如果是单个checkbox可以很方便的设置value字段。如果是列表框如何进行。
欢迎对此任务提出更多建议。提前致谢!!!
最佳答案
一个简单的解决方案是创建两个列表(arrayList
或任何基于集合的列表),一个应该包含可用于在 JSP 中创建复选框的复选框的所有值,另一个列表应该只包含那些被选中的值。说你需要有类似的东西
public class MyAction extends ActionSupport{
List<String> checkBoxList;
List<String> selectedCheckBoxList
// getters and setters
public String execute() throws exception{
checkBoxList=getAllCheckBoxes(); // fill this will all list values selected and unselected
selectedCheckBoxList=selectedCheckBoxes(); // only selected
return SUCCESS;
}
}
在你的 jsp 中你需要做的一切
<s:checkboxlist list="%{checkBoxList}" name="checkBoxList" value="%{selectedCheckBoxList}"/>
关于database - 如何在struts2的复选框列表中保留值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9406085/
我是一名优秀的程序员,十分优秀!