我想在jsp(welcome.jsp)文件中使用foreach循环遍历数组,并希望将“项目名称”放在下拉列表中。但是代码不起作用。
<!-- dropdown menu -->
<select name="projectList" id="arrDropdownList" >
<c:forEach var="name" items="${person.getProjectList()}">
<option value="${name}">${name} </option>
</c:forEach>
</select>
我通过doPost()方法(RequestPostForm.java)接收指定的数据。 (arrDropdownList包含项目名称)
Person person = new Person(name, email, authStringEnc, arrDropdownList);
req.setAttribute("myPerson", person);
RequestDispatcher dispatcher = req.getRequestDispatcher("welcome.jsp");
到目前为止,我只能通过页面上的for循环显示所需的项目名称(welcome.jsp)
for(Object elem : person.getProjectList())
out.print(elem + " ");
答案 0 :(得分:0)
问题在以下行中:
<c:forEach var="name" items="${person.getProjectList()}">
在这里,person
是JSP中的未知变量。由于您使用person
将req
设置为myPerson
,如下所示:
req.setAttribute("myPerson", person);
您只能使用myPerson
来检索它,如下所示:
<c:forEach var="name" items="${myPerson.getProjectList()}">
或
<c:forEach var="name" items="${myPerson.projectList}">