2013-01-18 122 views
0

在JSP內部,我需要以編程方式構造變量名稱以便訪問,例如,變量JSP:構建變量名稱

列表

  • `$ {變量1}`
  • `$ {變量2}`
  • `$ {variable3}`
  • `$ {variable4}`

使用<c:forEach>${variable + i}將不夠,因爲i是總和到變量。 有什麼建議嗎?

+1

你是什麼意思「*使用''和'$ {variable + i}'是不夠的,因爲'i'是和變量*的和? – Lion

+0

聽起來像使用數組或地圖可能比您嘗試的方式更好,您不覺得嗎? – joragupra

+0

對'i'使用for將不起作用,因爲$ {variable + i}會將$ {variable}的值替換爲$ {i} – user1911251

回答

0

使用「i」作爲索引的數組。

2

使用<jsp:useBean class="java.util.HashMap">技巧。

<jsp:useBean id="variables" class="java.util.HashMap" /> 
<c:forEach items="${items}" var="item" varStatus="loop"> 
    <c:set target="${variables}" property="variable${loop.index}" value="some" /> 
    ... 
</c:forEach> 

這基本上會在頁面範圍HashMap並把給定的變量映射鍵。相關的地圖值可以自由選擇。你甚至可以在其中使用EL。

爲了訪問它,只需使用${variables['variable1']}通常的方式等等。