在我的JSP页面中,我正在迭代学生列表并在父页面上显示它们,当我按下“删除”或“编辑”按钮时,它应该设置为必须编辑/删除的studentID的参数之一,但是它设置为参数studentIDs。这是代码和一些图片:
<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>
答案 0 :(得分:1)
hidden
标记有多个c:forEach
字段。但是你只需要使用一个。因此,您应该将隐藏的标记移出c:forEach
正文。
当您点击该按钮时,它会触发您可以通过javascript代码处理的click
和submit
个事件,以使用当前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>
注意:您应该使用的脚本标记