0

我正在使用 Struts1.3,我有 Jsp 页面,该页面显示该页面上的员工列表。为此,我所做的是,我在该操作中有一个操作,我正在调用一个返回列表的函数,并且我在会话中将这些列表设置为 session.setAttribute(Constant.EMPLIST,list)。现在在我的 Jsp 页面中,我使用逻辑标记来迭代这个列表,如下所示。

<html:form method="post" action="test.do" styleId="empForm">
  <logic:iterate id="EmpForm" name="<%=Constant.EMPLIST%>">
    <table>
     <tr>
      <td>
        <html:text property="empName" name="EmpForm" styleClass="fieldbox2" styleId="textfield50"/>

      </td>
        <td>

        <html:text property="empSal" name="EmpForm" styleClass="fieldbox3" styleId="textfield50"/>

      </td>
 </table>
</logic:iterate>
 <table>
    <tr>
      <td>
        <img onclick="updateEmpDetails" src="images/update.jpg" />
      </td>
    </tr>
  </table>
</html>

它显示了所有员工的详细信息并且工作正常。但还有一项工作是在这个页面上我有一个update按钮。我需要做的是点击updateEmpDetails 按钮后。我需要在 updateAction 中发送所有员工更新的详细信息,但我无法做到这一点,我不知道如何处理多个 FormBean 属性值。我只能在 updateAction 中获取一个员工详细信息。我在我的 updateAction 中这样做

 EmpForm empForm = (EmpForm) form;
System.out.println("EmpId:::" + empForm.getEmpId);

如果可能的话,我不知道如何做到这一点 List 或如何处理多个 FormBean 值。请指导我如何做到这一点,如果有任何例子,请非常感谢我。谢谢

更新:: 这是我计划的带有 setter 和 getter 属性的 java 类:

public class Sites {
    private String jobSite="";        
    private String engineerName="";
    private boolean isCheck;
}

这是我的 FormBean:

public class SiteToServiceForm extends org.apache.struts.action.ActionForm {


   private List<Sites> sites=new ArrayList<Sites>();

    public List<Sites> getSites() {
        return sites;
    }

    public void setSites(List<Sites> sites) {
        this.sites = sites;
    }


}

这是我的行动:

public class SiteToServicingAction extends org.apache.struts.action.Action {
 List<Sites> siteDetails=SiteSearchDataModel.getSiteDetails(serviceForm);


        ((SiteToServiceForm) form).setSites(siteDetails);
}

出于显示目的,现在我需要提交更新站点值,我正在执行此操作:

 List<Sites> siteList=serviceForm.getSites();
            if(siteList!=null && siteList.size()>0)
            {
                for(Sites site:siteList)
                {
                    if(site.isIsCheck()==true)
                    {
                        SiteSearchDataModel.updateRecord(serviceForm.getEngineerId(), site.getPropertyId());
                        System.out.println("properyID::::"+site.getPropertyId());
                    }
                }
            }

而且我无法将更新列表放入我的动作课中,请帮助我。

4

1 回答 1

1

1 有一个Action Form 2 映射操作表单到3 在您的表单Actionstruts-config.xml 有一个字段List<Employee>4 在 JSP 上使用以下代码

<logic:iterate id="emp" indexId="i" name="FormName"
            property="employees">

 <html:text value="${FormName.employees[i].employeeName}" styleClass="fieldbox3"/>
 <html:text value="${FormName.employees[i].employeeSal}" styleClass="fieldbox3"/>

<logic:iterate>
于 2011-11-01T18:34:22.933 回答