EL表达式的值作参数放在href后为空


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