2016-03-28 23 views
1

JSP sayfamda Öğrenciler listesi üzerinden yinelemiyorum ve bunları "kaldır" veya "düzenle" düğmesine bastığımda bunları Ana sayfada gösteriyorum; kaldırıldı/düzenlenen, ancak parametresine ayarlanmış hem studentID's.Here kodu ve bazı pic en yapılmaz:JSP <c:foreach> parametresini ayarlamak için parametre ayarını seçin

<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="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> 

enter image description here


enter image description here

cevap

1

c:forEach etiketi ile oluşturulan çoklu hidden alanları vardır. Ama sadece bir tane kullanmalısın. Bu nedenle, gizli etiketi c:forEach gövdesinden dışarı taşımalısınız.

bunu geçerli strudentID ile gizli alanın değerini ayarlamak için javascript kodu ile işleyebilir click ve submit olayları tetikleyen butonuna tıklayın

.

<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> 

Not: komut etiketi, cevap @Roman C

+0

sayesinde dikkat kullanmalıdır fakat studentID parametresinde ayarlı değil bu yüzden javascript kodu, yürütülmüyor. – Popeye

+0

neden çalışmıyor? –

+0

Çalıştı! Bu satırda kod girmemiştim ('dan): '' Yaptıktan sonra işe yaradı! Çok teşekkürler!! Beni çok fazla kurtardı :)) – Popeye