java - 如何在下拉列表中使用 foreach 循环?
问题描述
我想在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 + " ");
解决方案
问题出在以下行:
<c:forEach var="name" items="${person.getProjectList()}">
这里,person
是 JSP 中的一个未知变量。由于您将 a 设置person
为req
using myPerson
,如下所示:
req.setAttribute("myPerson", person);
您只能使用myPerson
以下方法检索它:
<c:forEach var="name" items="${myPerson.getProjectList()}">
或者
<c:forEach var="name" items="${myPerson.projectList}">
推荐阅读
- python-3.x - Python:在另一个类中调用一个类
- excel - Power Apps Canvas - 从 Excel 工作表导入数据
- php - PayPal SDK:送货地址和类别
- python - 如何将值列表乘以值的数据帧,然后使用这些结果乘以数据帧中的下一行值?
- python - 将一个文本文件中的多个表读取到 pandas 数据框/数据框
- css - CSS justify-content: IE11 上的 space-between 工作不正确
- c# - Umbraco 8 - 导入成员并链接到相关内容
- java - 如何遍历地图并使用递归将其元素添加到 ArrayList?
- python - 如何在 PyGame 中创建一个矩形作为精灵
- python - 如何获取 Android 上的窗口位置或键盘高度?