1

我正在使用struts2+tiles2,我想做以下事情。我有一个 baseLayout,我在其中定义我的菜单、正文等,如下所示:

<tiles:insertAttribute name="menu" />
<tiles:insertAttribute name="body" />

然后在我的tiles.xml中我这样设置它们:

<definition name="/index" extends="baseLayout">    
    <put-attribute name="title" value="/public/menu.jsp" />
    <put-attribute name="body" value="/public/index.jsp" />
</definition>

所以,有时我有更复杂的布局,我可以在正文中使用几个 jsp,其中一些 jsp 有一些内联脚本。我想知道是否有任何方法可以将所有这些内联脚本附加到同一个地方。例如,我想在 baseLayout 中定义页头,然后将所有内联脚本附加到该页头。我希望有办法做到这一点,但我发现瓷砖文档非常混乱,我还没有找到一种方法来做到这一点。

谢谢!

4

1 回答 1

0

在tiles1中,我做了这样的事情:

baseLayout.jsp
<html>
    <head>
        <tiles:getAsString name="appendedFiles"/>
    </head>
<body>
<tiles:insert attribute="menu">
<tiles:insert attribute="body">
</body>
</html>

tiles-defs.xml
<definition name="baseLayout" path="/struts/baseLayout.jsp">
  <put name="cssfiles"><![CDATA[
    <link href="file1.css" rel="stylesheet" type="text/css">
    <link href="file2.css" rel="stylesheet" type="text/css">
  ]]></put>
</definition>

或者,您可以将内容放入单独的 jsp 中,然后像任何其他内容一样将“tiles:insertAttribute”放入。

于 2011-02-04T20:47:28.143 回答