如何在jsp中指定arraylist选择选项

时间:2013-10-10 10:52:34

标签: html jsp

我有清单:

ArrayList list = new ArrayList();

我写这个列表选择选项:

<td>
    <select name="database1">
        <option value="" selected>select</option>
        <%
        for(int i=0;i<list.size();i++) {
            Field=list.get(i).toString();
        %>
        <option value="<%=Field %>"><%=Field %></option>
        <%} %>
    </select>
</td>

所以我的要求是不使用for循环。我们直接在list中写select option

2 个答案:

答案 0 :(得分:5)

不建议在jsp中使用java代码。你应该尽量避免它。

在您的情况下需要遵循的方法是首先将Arraylist设置为调用jsp页面的servlet中的属性。

Servlet代码

ArrayList databaseArrayList = new ArrayList();
...
request.setAttribute("databaseList", databaseArrayList);     

然后,在JSP代码中,使用jstl迭代列表的值以填充选择选项。

JSP代码

<select name="database1">
  <c:forEach items="${databaseList}" var="databaseValue">
    <option value="${databaseValue}">
        ${databaseValue}
    </option>
  </c:forEach>
</select>

阅读本文:How to avoid Java code in JSP files?

答案 1 :(得分:0)

我猜你做得很好,只需更改你的代码: - <option value="<%out.print(Field); %>"></option> 希望这有效