這裏是我的代碼 - 這是使用提供的屬性(候選人)的JSP文件:JSP - 巴頓在ForEach循環中的每個條目
<% ArrayList<Candidate> candidates = (ArrayList<Candidate>) request.getAttribute("candidates"); %>
<% for (int i = 0; i<candidates.size(); i++) { %>
<table>
<tr>
<td><b>Imię</b></td>
<td> <%= candidates.get(i).getFirstName() %></td>
</tr>
<tr>
<td><b>Nazwisko</b></td>
<td> <%= candidates.get(i).getLastName() %>
</td>
</tr>
<tr>
<td><b>PESEL</b></td>
<td> <%= candidates.get(i).getPESEL() %>
</td>
</tr>
<tr>
<td><b>Płeć</b></td>
<td><%= candidates.get(i).getSex() %>
</td>
</tr>
<tr>
<td><b>Miasto</b></td>
<td><%= candidates.get(i).getCity() %>
</td>
</tr>
<tr>
<td><b>Adres</b></td>
<td><%= candidates.get(i).getAddress() %>
</td>
</tr>
<tr>
<td><b>Numer kontaktowy</b></td>
<td><%=candidates.get(i).getContactNumber() %>
</td>
</tr>
<tr>
<td><b>Adres e-mail</b></td>
<td><%= candidates.get(i).getEmailAddress() %>
</td>
</tr>
<tr>
<td><b>Umiejętności</b></td>
<td><%= candidates.get(i).getExperiences() %>
</td>
</tr>
</table>
<br>
<form action="JobOfferServlet" method="post">
<% Integer id = candidates.get(i).getId(); %>
<input type="hidden" name="candidateId" value="<%= id%>">
<button type="submit" name="option" value="listMatching">Znajdz oferty pracy dla
<%= candidates.get(i).getFirstName()%> <%= candidates.get(i).getLastName()%></button>
<br><br>
<% } %>
我試圖在這裏做:我想 顯示每從候選人候選人ArrayList中另外 - 爲每個條目添加指定按鈕,這些按鈕將轉發候選人ID以及指定Servlet類中所需結果的選項參數。
問題是,無論點擊哪個按鈕,發送ID始終爲1 - 即使每個候選人都正確地打印在瀏覽器中,即使在按鈕的標籤上,也會爲列表中的第一個候選人執行操作...
首先,我嘗試使用ForEach JSP循環,當使用基本For循環但效果相同時 - 總是使用第一個候選。
我該如何讓它工作?
我在循環中看不到表格結束標記()。你有嗎?因爲這樣,只有一種形式被創建。 –
@GurkanYesilyurt OMG。我不能相信我錯過了這一點。你說得對,我忘記了表格結束標記。我可能會在重構該類之後意外刪除它,並將它歸咎於愚蠢的JSP腳本語句中......原來我是那個愚蠢的人。感謝隊友,我真的很感激它,因爲我被困在這個問題2晚。 –
不客氣。如果您將我的答案標記爲已接受,我會很高興。 –