如何在不使用get方法的情况下传递id?只有邮政方法..
这是我的代码有一个get方法:
<c:forEach var="student" items="${studentList}">
<tr>
<td><c:out value="${student.firstName}" /></td>
<td><c:out value="${student.middleName}" /></td>
<td><c:out value="${student.lastName}" /></td>
<td><c:out value="${student.yearLevel}" /></td>
<td><c:out value="${student.scholarship}" /></td>
<td><a href="student?page=edit&id=${student.id}">Edit</a></td>
<td><a href="student?page=delete&id=${student.id}">Delete</a></td>
</tr>
</c:forEach>
我尝试使用
<input type="hidden" name="edit" value="${student.id}">
<input type="hidden" name="delete" value="${student.id}">
但是列表中的第一个学生将始终被编辑,学生列表中的第一个学生将被删除
答案 0 :(得分:1)
您需要为每个按钮创建单独的<form>
标记。
否则,您的所有按钮都将共享表单中的所有输入。
答案 1 :(得分:0)
如果你能够使用jQuery,你可以这样做:
<script type="text/javascript">
$(function() {
$(".studentAction").off("click").on("click", function() {
var url = "student";
url += "?page=" + $(this).attr("name");
url += "&id=" + $(this).val();
$.ajax({
type: "POST",
url: url,
async: false,
success: function(data) {
// on success
},
error: function(data) {
// on error
}
};
});
});
</script>
<input class="studentAction" type="hidden" name="edit" value="${student.id}">
<input class="studentAction" type="hidden" name="delete" value="${student.id}">