0

我在 Spring 应用程序中使用 JSPX 文档,我发现了一件奇怪的事情:EL 表达式不在 HTML 属性中评估,仅在 taglib 属性中。让我举个例子。给定以下代码段:

<c:forEach items="${articles}" var="article">
  <a href="/articles/${article.id}">${article.title}</a>
</c:forEach>

如果我有 id 为 2 且标题为“StackOverflow 示例”的文章,那么我会得到以下输出:

<a href="/articles/${article.id}">StackOverflow example</a>

因此,href 属性中的表达式不会被评估。正常吗?我用<jsp:element>魔法解决了它,但如果 EL 评估也可以在 HTML 属性中工作,它会更有用。

4

2 回答 2

0

确保您的 web.xml 在顶部有正确的声明,例如:

<web-app
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns="http://java.sun.com/xml/ns/javaee"
   xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
   xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
...
</web-app>
于 2012-08-22T09:02:05.553 回答
0

尝试使用c:url而不是 html 锚链接。请参阅此链接以了解 c:url。

于 2012-08-22T10:21:23.093 回答