【发布时间】:2011-06-13 15:16:38
【问题描述】:
美好的一天!
我想将我的代码转换为 STRUTS.. 我尝试在我的 Action 类中不使用 getParameter.. 但是如果不使用 getParameter,我无法将信息从 JSP 传递到 Action Class。
JSP:
<html:form action="EditExam">
<input type = "hidden" name = applicantNumber value="${applicantForm.applicantNumber}" >
<table>
<c:forEach var="exam" items="${examList}">
<input type = "hidden" name ="examId" value="${exam.examId}" >
<tr>
<td>Exam Type:  </td> <td><input type="text" value="${exam.examName}" name="examType" readonly ="true"></td>
</tr>
<tr>
<td>Date: </td> <td><input type="text" value="${exam.examDate}" name="examDate" class="date"></td>
</tr>
<tr>
<td>Result: </td>
<td>
<select name = examResult>
<option value="Pass" ${exam.examResult == 'Pass' ? 'selected' : ''}>Pass</option>
<option value="Fail" ${exam.examResult == 'Fail' ? 'selected' : ''}>Fail</option>
<option value="" ${exam.examResult == '' ? 'selected' : ''}></option>
</select>
</td>
</tr>
<tr><td> </td><td>  </td></tr>
</c:forEach>
</table>
<input type="submit" class="saveButton" value="SAVE">
</html:form>
动作类:
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
// TODO Auto-generated method stub
String forward = "success";
ApplicantForm applicantForm = (ApplicantForm)form;
int applicantNumber = applicantForm.getApplicantNumber();
String examDate[] = request.getParameterValues("examDate");
String examResult[] = request.getParameterValues("examResult");
String examId[] = request.getParameterValues("examId");
//MORE CODES AFTER...
我的问题是: 如何在不使用 getparameter 的情况下将数据从 JSP 传递到 Action Class。
考虑:
- 我的考试是一个列表...
- EDIT 按钮在循环之外...所以应该捕获循环内的所有更改...(我需要传递 ArrayList 吗?如何在 Action FOrm 上捕获它?)
您的回复将不胜感激。谢谢。
【问题讨论】:
-
我的建议是否回答了您的问题?