<c:forEach items="${requestScope.books}" var="book">
<tr>
<td>${book.name}</td>
<td>${book.price}</td>
<td>${book.author}</td>
<td>${book.sales}</td>
<td>${book.stock}</td>
<td><a href="pages/manager/book_edit.jsp">修改</a></td>
<td><a class="deleteClass" href="manager/bookServlet?action=delete&id=${book.id}">删除</a></td>
</tr>
</c:forEach>
下面为网页检查源码,其他位置EL表达式正常,删除标签中取值为空。
<tr>
<td>java从入门到放弃</td>
<td>80.00</td>
<td>国哥</td>
<td>9999</td>
<td>9</td>
<td><a href="pages/manager/book_edit.jsp">修改</a></td>
<td><a class="deleteClass" href="manager/bookServlet?action=delete&id=">删除</a></td>
</tr>
${requestScope.books}
改为
${books}
你这样写当然不行啦,id取不到这个值的,你应该通过字符串拼接来完成即可
<td><a class="deleteClass" href="manager/bookServlet?action=delete&id=${book.id}">删除</a></td>
改成
<td><a class="deleteClass" href="manager/bookServlet?action=delete&id="+${book.id}>删除</a></td>