我想在包含页面中使用displaytag,但是我遇到了困难。 我有一个主网页,其中包括标题JSPF,菜单JSPF并且取决于所选择的菜单上的其他JSPF(上menu.jspf)在包含页面中显示标签
main.jspf
<html><body>
<table border="0">
<tr>
<td colspan="2"><s:include value="header.jspf"/></td>
</tr>
<tr>
<td><s:include value="menu.jspf"/></td>
<td><s:include value="%{page}"/></td>
</tr>
</table>
</body></html>
“其他” JSPF (我改变“页面”变量的值在Struts2的行动)
<%@ taglib prefix="display" uri="http://displaytag.sf.net" %>
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<link rel="stylesheet" href="./css/screen.css" type="text/css"/>
<link rel="stylesheet" href="./css/displaytag.css" type="text/css"/>
<body>
<display:table name="${usageList}" pagesize="2" requestURI="menu_admin_freq.action" sort="list" class="mars">
<display:column property="nameBackendService" title="BackendService" sortable="true"/>
<display:column property="frequency" title="Frequency" sortable="true"/>
</display:table>
</body></html>
正如你可以看到我有一个完整的JSP页面,我认为是不是一个好主意。不过,当我试图只包括一个片段(没有<html>
和<body>
种元素),并把标签库元素融入DisplayTag表格不同并没有出现......当我删除了<html>
和<body>
元素和离开标签库之一,那么我可以看到在网页上的文本main.jsp中:"<%@ taglib prefix="display" uri="http://displaytag.sf.net" %>"
目前我有一个工作解决方案(通过在页面中使用<html>
,<body>
a <%@ taglib>
必须包含),但我认为我的设计模式很糟糕。我应该如何解决这个问题? 谢谢, Viktor
感谢Aleksandr的快速响应!我需要动态包含,因为我知道<%@ include是用于静态包含的。我对吗?或者我知道不正确?谢谢,V。 – Viktor
所以,只需将您的页面重命名为'.jsp'并使用''标签即可。 –
感谢Aleksandr,它的工作原理!你是对的,我只需要重命名为.jsp。 V. – Viktor