<tiles-definitions>
<definition name="home" template="/WEB-INF/views/home.jsp">
<put-attribute name="title" value="My App" />
<put-attribute name="header" value="/WEB-INF/views/common/header.jsp" />
<put-attribute name="menu" value="/WEB-INF/views/common/nav.jsp" />
<put-attribute name="footer" value="/WEB-INF/views/common/footer.jsp" />
</definition>
</tiles-definitions>
如何将标题值(我的应用程序)传播到header.jsp?在标题jsp中,当我这样做时:
<tiles:insertAttribute name="title" ignore="true" />
什么都没打印出来。当我在home.jsp中执行相同操作时,会打印我的应用程序。 cascaded = true没有帮助。
答案 0 :(得分:0)
目前尚不清楚你在哪里尝试cascade=true
(假设这是你问题中的错误:它应该是“级联”,而不是“级联”)但是以下工作正如预期的那样:
<强> tiles.xml:强>
<tiles-definitions>
<definition name="home" template="/WEB-INF/views/home.jsp">
<put-attribute name="title" value="My App" cascade="true"/>
<put-attribute name="header" value="/WEB-INF/views/common/header.jsp" />
(...)
</definition>
</tiles-definitions>
<强>针对home.jsp:强>
Title: <tiles:insertAttribute name="title" /> <br/>
Header: <tiles:insertAttribute name="header" />
<强> header.jsp中:强>
Title in header: <tiles:insertAttribute name="title" />
输出结果为:
Title: My App Header: Title in header: My App