2016-05-24 40 views
0

我的代碼看起來是這樣的:如何打印出這是多少次匹配C:if語句

<table border 1> 
    <tr> 
     <th>Toteutus tunnus</th> 
     <th>Toteutus nimi</th> 
     <th>Toteutus opettaja</th> 
     <th>Palautteen määrä</th> 
    </tr> 
<c:forEach items="${toteutukset}" var="toteutus"> 
    <tr> 
     <td><a href="/palaute/main/toteutuksenpalautteet/${toteutus.toteutusID}">${toteutus.toteutusTunnus}</a></td> 
     <td>${toteutus.toteutusNimi}</td> 
     <td>${toteutus.opettajaNimi}</td> 
     <td> 
<c:forEach items="${palautteet}" var="palaute" varStatus="count"> 
<c:if test="${toteutus.toteutusID == palaute.toteutusID }"> 

</c:if> 
</c:forEach> 
     </td> 
    </tr> 


</c:forEach> 
</table> 

首先,我打印出清單課程的所有事情(toteutus)然後我檢查列表的反饋(palautteet),然後使用c:如果要查看每個課程有多少反饋,並且我想顯示每門課程旁邊的反饋數量,但我不知道如何。請幫助

回答

0

冷杉的建議將是在您的後端代碼,通過將其添加到對象toteutus。無論如何,如果你想保持你的代碼,你可以做這樣的事情:

<td> 
     <c:set var="nrOfFeedbacks" value="0" scope="page"/> 
     <c:forEach items="${palautteet}" var="palaute" varStatus="count"> 
     <c:if test="${toteutus.toteutusID == palaute.toteutusID }"> 
      <c:set var="nrOfFeedbacks" value="${nrOfFeedbacks+ 1}" scope="page"/> 
     </c:if> 
     </c:forEach> 
     //set html for counter 
     ${nrOfFeedbacks} 
    </td> 
+0

感謝您的快速響應,但您的代碼不工作(或者我可能是用錯了,它顯示爲0旁邊的每個過程。即使有一些與之相關的反饋 – JavaEvgen

+0

@JavaEvgen對不起,我的壞...變量'nrOfFeedbacks'沒有遞增,因爲我將新值設置爲'count'(該死的複製粘貼!:p)。作品... – KLajdPaja

+0

:D Sry太愚蠢了,我自己修復它,其實我注意到你正在增加另一個變量,但我只是修復了最後一行設置「count」:D現在它工作完美。很多。順便說一句,我如何設置你的答案是我需要的答案:D – JavaEvgen