/ / JSP <c: foreach> wybierz parametr do ustawienia - html, jsp, jstl, el

JSP <c: foreach> wybierz parametr do ustawienia - html, jsp, jstl, el

Na mojej stronie JSP powtarzam listęUczniowie i wyświetlając je na stronie nadrzędnej, gdy nacisnę przycisk „usuń” lub „edytuj”, należy ustawić jako parametr jeden z identyfikatorów studentID, które muszą być edytowane / usuwane, ale ustawiono parametr oba s studentID „Oto kod, a niektóre pic ”s:

<c:forEach var="thisStudent" items="${studentList}">
<form:hidden path="studentID" value="${thisStudent.studentID}"/>
<div class="panelheader">
<p>${thisStudent.userName}</p>
</div>
<div class="panel panel-default">
<div class="panel-body fixed-panel">
<div class="childinfo">
<img src="/images/resources/images/Matildacircle.png" class="center-block">
<p>${thisStudent.firstName}</p>
<p>Points ${thisStudent.rewardPoints} </p>
<BR>
<button type="button" class="btn btn-default center-block redeembtn">Redeem</button>
</div>
</div>
<div class="panel-footer clearfix">
<div class="pull-left">
<button id="removeStudent" type="submit" name="action" value="removeStudent" style="color: #32B2B2">remove</button> <span class="colortext">|</span>
<button id="editStudent" type="submit" name="action" value="editStudentInfo" style="color: #32B2B2">edit</button>
</div>
</div>
</div>
</c:forEach>

wprowadź opis obrazu tutaj


wprowadź opis obrazu tutaj

Odpowiedzi:

1 dla odpowiedzi № 1

Istnieje wiele hidden pola renderowane przez c:forEach etykietka. Ale musisz użyć tylko jednego. Dlatego należy przenieść ukryty tag z c:forEach ciało.

Po kliknięciu przycisku uruchamia się click i submit zdarzenia, które można obsługiwać za pomocą kodu javascript, aby ustawić wartość ukrytego pola za pomocą bieżącego strudentID.

<button id="editStudent" type="submit" name="action" value="editStudentInfo" style="color: #32B2B2" onclick="setStudentID(${thisStudent.studentID})">edit</button>
</div>
<script>
function setStudentID(studentID){
document.forms[0].elements["studentID"].value=studentID;
}
</script>

Uwaga: znacznik skryptu, którego należy użyć