为什么我们不能独立使用JSTL fn标签,就像核心标签一样

时间:2016-09-30 13:24:45

标签: jsp jstl jstl-functions

如果functions标记库也是JSTL的一部分,那么为什么我们不能像其他标记一样使用它们?例如,使用core,我们可以这样说吗?

<c:if test="1==1">
    <h3>Render this if 1==1</h3>
 </c>

为什么我们不能用这样的功能做同样的事情呢?

<fn:...

我们可以只在$ {}内使用它们吗?

2 个答案:

答案 0 :(得分:1)

你做得对。 JSTL函数(fn)只能在$ {}内使用,因为它会影响或产生变量的值。例如,如果我想知道名为'array'

的数组的大小
<c:out value="${fn:length(array)}" />

使用<c:xxx ... />之类的JSTL标记来处理和定义变量。 在${ }内,您处理变量的值

答案 1 :(得分:0)

这是一个演示。

<%@ taglib prefix = "fn" uri = "http://java.sun.com/jsp/jstl/functions" %>
<!DOCTYPE html>
<html>
    <head></head>
    <body>
          ${fn:toUpperCase("jstl")}  
          ||${fn:substring(fn:toUpperCase(fn:trim("    xxxjstl    ")), 3, 7)}||
    </body>
</html>

输出: JSTL || JSTL ||