【问题标题】:How to retain values in checkboxlist of struts2?如何在struts2的checkboxlist中保留值?
【发布时间】:2012-02-23 01:59:23
【问题描述】:

大家好,我正在为 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。

那么如何从数据库值中保留复选框列表中的值。如果是单个复选框可以轻松设置值字段。如果是列表框如何进行。

欢迎对此任务提出更多建议。提前致谢!!!

【问题讨论】:

  • 如果我没看错你想自动检查页面加载吗?
  • @UmeshAwasthi:你是对的。自动检查页面加载。非常感谢。

标签: database struts2 checkboxlist


【解决方案1】:

一个简单的解决方案是创建两个列表(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}"/>

【讨论】:

  • 真棒 Umesh Awasthi。真的你的代码帮我解决了这个复选框列表选择。我在我的 jsp 中使用了以下内容:。非常感谢!!!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-20
  • 1970-01-01
  • 1970-01-01
  • 2013-07-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多