2012-07-05 84 views
2

我想遍歷作爲User對象的成員變量的List。 我不想使用片段,並希望使用某種形式的jsp標籤來完成這個技巧。在jsp(jsp:getProperty?)中對列表<CustomClass>進行迭代

User類

public class User { 

    private List<Option> options; 

    public getOptions()... 
} 

我試圖在片段做

<% 
User user = (User)session.getAttribute("user"); 
List<Option> options = user.getOptions(); 
%> 

<select id="alertFilter"> 

<% for (Option o : options) { %> 

<option><%=o.getTitle()%></option> 

<% } %> 

</select> 

我已經看到了什麼,我試圖做一些簡單的例子,但他們總是得到簡單的回饋。

標籤庫的方式 - 不工作

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 

<jsp:useBean id="user" class="ie.openmobile.smsjobs.entity.User" scope="request"></jsp:useBean> 

<c:forEach var="options" items="$user.options" > <--incorrect references to alerts/getOptions() 

<br>$options.title <--incorrect syntax 

</c:forEach> 

誰能幫助我嗎?

回答

7

將其更改爲如下

<select id="alertFilter"> 

<c:forEach var="option" items="${user.options}" > 
    <option><c:out value="${option.title}"/></option> 
</c:forEach> 

</select> 

說明:$ {} user.options將利用其getOptions()方法得到的會話和選項集合的用戶,它會遍歷每個條目上

雖然在迭代${option.title}會給option(這是目前的選項實例遍歷)和option.getTile()

+0

感謝quic k和正確的迴應。非常感激。 – feargal 2012-07-05 10:47:50

+1

歡迎您:) – 2012-07-05 10:48:53

+0

您先生,2年後幫助我! :) 非常感謝! – creativeby 2014-03-03 21:34:37