TutorialPoint有一个简单的 c:url
标记示例,如下所示:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<title><c:url> Tag Example</title>
</head>
<body>
<a href="<c:url value="/jsp/index.htm"/>">TEST</a>
</body>
</html>
当使用 Chrome 的开发者工具查看相应的渲染时,它呈现如下:
<a href="/jsp/index.htm">TEST</a>
所以 c:url
标签似乎是多余的,但我确定我遗漏了什么?
最佳答案
正如 Tutorials Points 所说,这是为了格式化您输入的 URL 的目的,它可以存储在变量中。
例如你有这个:
<a href="<c:url value="/test.html"/>">TEST</a>
如果您点击测试,它将转到页面test.html
.就那么简单。但问题是,<c:url value="/test.html"/>
的值(value)是多少? ?
您是否认为该值只是 /test.html
?
尝试测试它,像这样:
<a href="<c:url value="/test.html" var="testvar" />">TEST</a> // testvar is where you put the url formatted by c:url
<c:out value="${testvar}"/> // you print what is the formatted url
答案将是您项目的Context Folder加上您输入的URL。
context/test.html 将是输出。
我认为它的目的是让 context
(当前申请)已提供给 URL
, 你只需要添加剩余的 URL
部分。
关于java - jSTL的c :url tag?的目的是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41456615/