Model view controller 使用tiles2和spring mvc动态设置页面标题
我问自己这个问题已经有一段时间了,但我还没有在网上找到一个很好的解决方案 所以我使用Tiles2和SpringMVC,我想在body tile中动态设置页面标题。有办法吗Model view controller 使用tiles2和spring mvc动态设置页面标题,model-view-controller,spring,title,tiles,tiles2,Model View Controller,Spring,Title,Tiles,Tiles2,我问自己这个问题已经有一段时间了,但我还没有在网上找到一个很好的解决方案 所以我使用Tiles2和SpringMVC,我想在body tile中动态设置页面标题。有办法吗 <definition name="mainTemplate" template="/WEB-INF/template/main.jsp"> <put-attribute name="header" value="/WEB-INF/template/header.jsp" /> <put-at
<definition name="mainTemplate" template="/WEB-INF/template/main.jsp">
<put-attribute name="header" value="/WEB-INF/template/header.jsp" />
<put-attribute name="footer" value="/WEB-INF/template/footer.jsp" />
<put-attribute name="body" value="/WEB-INF/template/blank.jsp" />
</definition>
<definition name="list" extends="mainTemplate">
<put-attribute name="body" value="/WEB-INF/jsp/list.jsp" />
</definition>
以及在模板中执行c:out平铺技术
如果“我想动态设置页面标题”,您的意思是“我想根据正在显示的互动程序设置页面标题,并且我想使用互动程序功能进行设置”,那么:
<definition ... >
...
<put-attribute name="title" value="My Title" />
</definition>
...
JSP:
但是,如果您的应用程序只有一种语言,这才是一个好的解决方案。tiles.xml:
<definition ... >
...
<put-attribute name="title" value="My Title" />
</definition>
...
JSP:
但是,如果您的应用程序只有一种语言,那么这才是一个好的解决方案。这对我来说是可行的。有什么问题吗 瓷砖:
<put-attribute name="myProjectRevision" value="1.0" type="string" />
JSP:
这对我很有用。有什么问题吗 瓷砖:
<put-attribute name="myProjectRevision" value="1.0" type="string" />
JSP:
您还可以将DwB的两个答案结合起来,这样您就可以充分利用这两个世界:
<title>
<tiles:insertAttribute name="title" ignore="true" />
<c:if test="${not empty pageTitle}">
<c:out value="${pageTitle}"></c:out>
</c:if>
</title>
当您希望某些页面具有静态标题(因此只需在tiles.xml文件中进行设置)、某些页面具有完全动态标题(不要在tiles.xml中进行任何设置,只需将pageTitle添加到模型对象中)或两者兼而有之(我的最爱)时,此功能非常有用这里有一个静态的前半部分和一个动态的后半部分。您还可以将DwB的两个答案结合起来,这样您就可以充分利用这两个方面:
<title>
<tiles:insertAttribute name="title" ignore="true" />
<c:if test="${not empty pageTitle}">
<c:out value="${pageTitle}"></c:out>
</c:if>
</title>
当您希望某些页面具有静态标题(因此只需在tiles.xml文件中进行设置)、某些页面具有完全动态标题(不要在tiles.xml中进行任何设置,只需将pageTitle添加到模型对象中)或同时具有静态前半部分和动态后半部分(我最喜欢)时,此功能非常有用。抱歉,我本应该更清楚这一点的。如果我在执行前确切地知道标题应该是什么,你的解决方案就行了。但我喜欢根据控制器检索的内容更改标题。有没有办法从“内容”磁贴中执行此操作?您可以从上面示例中的数据库中调用pageTitle类中标题的动态值,而不是我猜的硬编码值。对不起,我应该更清楚这一点。如果我在执行前确切地知道标题应该是什么,你的解决方案就行了。但我喜欢根据控制器检索的内容更改标题。有没有办法从“内容”上做到这一点平铺?您可以从上面示例中的数据库中调用pageTitle类中标题的动态值,而不是我猜的硬编码值。我认为这是它们的最佳解决方案,但仍然..在我看来,将视图代码放入控制器并不是最好的做法。我认为这是它们的最佳解决方案,但仍然..放入在控制器中查看代码对我来说并不是最好的选择。