【问题标题】:using check box and arraylist in struts 2在struts 2中使用复选框和arraylist
【发布时间】:2012-10-30 17:30:11
【问题描述】:

我在动作类中有一个数组列表。我想在我的jsp页面中访问这个arraylist以及一个复选框。如果复选框被选中,我想在另一个动作类中获取复选框的关联值。我该怎么做??

动作类:

public class CreateModuleAction extends ActionSupport{
       private List modNameList=new ArrayList();
    private int size;
public String manageModule()
    {

      ManageModule ob=new ManageModule();
      modNameList=ob.selectModule();

      if(modNameList.isEmpty()) {
          addActionError("Module list is empty!!!");
          return ERROR;

        }
      else{
         setSize(modNameList.size());
         return SUCCESS;  
          }

    }
public List getModNameList() {
        return modNameList;
    }

    public void setModNameList(List modNameList) {
        this.modNameList = modNameList;
    }

    public int getSize() {
        return size;
    }

    public void setSize(int size) {
        this.size = size;
    }

jsp页面:

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib uri="/struts-tags" prefix="s" %>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <link href="../css/style.css" rel="stylesheet" type="text/css" />
        <title>Admin Module Management</title>
    </head>
    <body>
             <div class="main">
            <div class="header"> 
<!--              Page heading-->

               <jsp:include page="/templates/heading.jsp" flush="true"/> 
            </div>
            <div class="menu">
<!--                Page menu-->

 <jsp:include page="/templates/menu.jsp" flush="true"/> 
            </div>
            <div class="content">
<!--                page content-->

               <div id="right_top" style="position:absolute; left:900px; top:300px;;">
                   <a href="adminCreateModule.jsp"><img src="../images/add.jpg"/>Add</a>
                   <a href="adminEditModule.jsp"><img src="../images/edit.jpg"/>Edit</a>
                   <a href="adminDeleteModule.jsp"><img src="../images/add.jpg"/>Delete</a>
               </div>
              <s:iterator status="size" value="modNameList">
                  <s:checkbox name="modNameCheck" fieldValue="true" value="modNameList"/>
                  <s:property value="modNameList"/>
              </s:iterator>
              <s:actionerror/>

            </div>
            <div class="footer" style="margin-left: 50%">
<!--                page footer-->

              <jsp:include page="/templates/footer.jsp" flush="true"/> 
            </div>

        </div>
    </body>
</html>

【问题讨论】:

  • 我将添加一些我尝试过的代码

标签: struts2


【解决方案1】:

为什么不用struts2 checkboxlist tag

<s:form action="myAction">
  <s:checkboxlist list="modNameList" name="modNameCheck"/>
</s:form>

现在在 yoyr myAction 动作类声明

private List modNameCheck; //with getter/setter

它将包含在 jsp 中检查过的条目

【讨论】:

    【解决方案2】:

    如果您想将复选框中的值提交到操作,那么您需要在 JSP 中使用 form。如果您想根据操作中的某些值显示选中/未选中的复选框,那么您需要在 value 属性中进行一些条件检查。

    <s:checkbox name="modNameCheck" value="list.contains(something)"/>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-11-17
      • 2013-01-23
      • 2011-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-02
      相关资源
      最近更新 更多