0

我正在尝试这段代码

for(Product product : catalog.getValues()){
String id = product.getId();
out.println("<a href=product.jsp?id=" + id + "/>");

}

当我在服务器上运行 jsp 时什么也没有出现。for 循环肯定正在运行 - 我认为这可能是一个语法问题。

怎么了?

4

2 回答 2

3

如果服务器控制台上没有错误,我认为问题可能与此有关:

out.println("<a href=product.jsp?id=" + id + "/>");

这应该是:

out.println("<a href=product.jsp?id=" + id + ">My Links</a>");

锚标记<a>未正确关闭。

于 2012-11-06T10:43:10.227 回答
1

这说了很多,但您应该远离在 JSP 文件中使用 scriptlet。您可以使用 JSTL 实现相同的目标

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

<c:forEach items="${reuqestScope.catalog}" var="product">
    <a href=product.jsp id="${product.id}">Link</a>
</c:forEach>

并且如评论中所述,您忘记关闭锚文本

于 2012-11-06T10:49:04.543 回答