2

当我在 jsp 中键入新内容然后将列表提交给 actionclass 时,如何获取该值?目前,我可以从 jsp 提交到动作类并查看我在动作中创建的新列表。但我希望能够检索我在 jsp 中键入的值。

员工对象类:

public class Employee {
    String empid;
    String empname;

        public String getEmpid() {
            return empid;
        }

        public void setEmpid(String empid) {
            this.empid = empid;
        }

        public String getEmpname() {
            return empname;
        }

        public void setEmpname(String empname) {
            this.empname = empname;
        }

        public Employee(String empid, String empname) {
            this.empid = empid;
            this.empname = empname;
        }



    } 

员工 JSP:

<%@page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-    8859-1"%>
    <%@ include file="../imports.jsp" %>  
     @page import="java.util.List"%>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title> Struts Logic Iterate Tag</title>
</head>
<body bgcolor="#ffcc66">
<html:form action="/logiciterate" styleId="LogicIterateForm" method="post"> 

    <h1>Struts logic:iterate tag </h1>
      <table style="font-weight:bold">
        <tr><td>Employee ID</td>
        <td>Employee Name</td></tr>


    <logic:iterate name="LogicIterateForm" property="emp" id="employee">
            <tr>
                    <td><html:text name="employee" value="${employee.empid}"          property="empid"
                            indexed="true" /></td>
                    <td><html:text name="employee" value="${employee.empname}"
                            property="empname" indexed="true" /></td>
            </tr>
    </logic:iterate>

            <input type="submit"  id="submit" value="Submit"   title="Submit" name="Submit"   >

            </html:form>
</body>

动作类:

    public class LogicIterateAction extends org.apache.struts.action.Action {

private final static String SUCCESS = "success";


public ActionForward execute(ActionMapping mapping, ActionForm form,
        HttpServletRequest request, HttpServletResponse response)
        throws Exception {

   if(request.getParameter("Submit") == null) {          

                                LogicIterateForm formBean=(LogicIterateForm)form;
                               ArrayList<Employee> list = new ArrayList<Employee>();
                                list.add(new Employee("11A0","Jack"));
                                list.add(new Employee("11A1","Sam"));
                                list.add(new Employee("11A2","Joe"));
                                list.add(new Employee("11A3","John"));
                                formBean.setEmp(list);
                                    return mapping.findForward(SUCCESS);

}



else{

     LogicIterateForm formBean=(LogicIterateForm)form;
      ArrayList<Employee> list2 = new ArrayList<Employee>();
                list2.add(new Employee("673","Queenie"));
                list2.add(new Employee("123","Wally"));
                list2.add(new Employee("345","Spike"));
                list2.add(new Employee("564","Red"));
                formBean.setEmp(list2);



     return mapping.findForward(SUCCESS);

}


}
}
4

2 回答 2

1

这一步如何...在动作类中编写消息..示例--
request.setAttribute("message", "User deleted successfully");

Step2...在jsp页面中gettng msg..示例-- <%= request.getAttribute("message") %>

你在找这个吗

于 2012-10-22T07:51:20.500 回答
0

使用下面的示例。

在 JSP 中:

<logic:iterate name="monthlyGainLossForm" property="ptcList" id="productTaxCat">
    <html:hidden name="productTaxCat" property="ptcId" indexed="true" />
    <html:hidden name="productTaxCat" property="ptcName" indexed="true" />
    <html:hidden name="productTaxCat" property="ptcActive" indexed="true" />
    <mf:tr>
        <mf:td><bean:write name="productTaxCat" property="ptcName"/></mf:td>
        <mf:td><bean:write name="productTaxCat" property="ptcActive"/></mf:td>
        <mf:td><html:checkbox name="productTaxCat" property="msaPtcLtcGLType" styleClass="input" indexed="true"/></mf:td>
        <mf:td><html:text name="productTaxCat" property="msaPtcLtcGLAmt" styleClass="label" style="width:100px;vertical-align:middle;" disabled="true" indexed="true"/></mf:td>
        <mf:td><html:checkbox name="productTaxCat" property="msaMthlyStcGLType" styleClass="input" indexed="true"/></mf:td>
        <mf:td><html:text name="productTaxCat" property="msaMthlyStcGLAmt" disabled="true" styleClass="label" style="width:100px;vertical-align:middle;" indexed="true"/></mf:td>
        <mf:td><html:checkbox name="productTaxCat" property="nonMsaPtcGLType" styleClass="input" indexed="true"/></mf:td>
        <mf:td><html:text name="productTaxCat" property="nonMsaPtcGLAmt" disabled="true" styleClass="label" style="width:100px;vertical-align:middle;" indexed="true"/></mf:td>
        <mf:td><html:checkbox name="productTaxCat" property="nonMsaStcGLType" styleClass="input" indexed="true"/></mf:td>
        <mf:td><html:text name="productTaxCat" property="nonMsaStcGLAmt" disabled="true" styleClass="label" style="width:100px;vertical-align:middle;" indexed="true"/></mf:td>
    </mf:tr>
</logic:iterate>

在行动:

for(int m = 0; m < monthGainLossForm.getPtcList().size(); m++) {
    ProductTaxCat prodTaxCat = (ProductTaxCat)monthGainLossForm.getPtcList().get(m);

    if(prodTaxCat.getMsaMthlyStcGLType()) {
        selectedPtcTypeCounter++;
    }

    if(prodTaxCat.getMsaPtcLtcGLType()) {
        selectedPtcTypeCounter++;
    }

    if(prodTaxCat.getNonMsaPtcGLType()) {
        selectedPtcTypeCounter++;
    }

    if(prodTaxCat.getNonMsaStcGLType()) {
        selectedPtcTypeCounter++;
    }
}
于 2014-04-23T19:56:34.947 回答