gpt4 book ai didi

jsp - 如何将 JSTL 自定义标记的主体存储到变量中?

转载 作者:行者123 更新时间:2023-12-02 03:47:45 25 4
gpt4 key购买 nike

我想创建一个可以像这样使用的自定义 JSP 标记:

<mytags:myTag>
<p>My content!</p>
</mytags:myTag>

在标签中,我想像处理任何其他属性一样处理正文的内容。因此,标记定义看起来像这样 - 但正文不是属性而是其他

我的标签.标签:

<%@taglib prefix="mytags" tagdir="/WEB-INF/tags/mytags" %>
<%@attribute name="body" required="true"%>

<div>
<c:if test="${fn:contains(body, 'test')}">
<p>Found test string<p>
</c:if>
</div>

显然,类似于 <jsp:doBody/><jsp:invoke fragment="body" />不会帮助我。此外,为此目的创建 Java 标记似乎有点过于复杂。

最佳答案

可以使用 <jsp:dobody> 捕获正文内容通过其 var 采取行动属性如 this 中所示文章。正文内容将作为属性添加到 pageContext标记文件的一部分,可以通过表达式访问。

mytag.tag

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

<jsp:doBody var="body"/>
<div>
<c:if test="${ fn:contains(body, 'test') }">
<p>Found test string</p>
</c:if>
</div>

关于jsp - 如何将 JSTL 自定义标记的主体存储到变量中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15831917/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com