我在struts2应用程序中使用了图块。在定义基本布局时,我已经定义了一个属性“scriptFile”。

<definition name="baseLayout" template="/application/base-layout.jsp" >
    ...
</definition>

<definition name="custom.tiles" extends="baseLayout">
    <put-attribute name="scriptFile" value="js/custom-script.js"></put-attribute>
</definition>

如果开发人员在图块定义文件“tiles.xml”中提供“scriptFile”,则应使用以下行包含此脚本文件
<script language="javascript" src="<tiles:insertAttribute name="scriptFile"></tiles:insertAttribute>"></script>

但是,如果未定义scriptFile属性,则必须跳过此行。

如何检查磁贴中是否存在“scriptFile”属性。有什么更好的方法可以做到这一点吗?

最佳答案

我试过了

<t:useAttribute name="scriptFile" id="script" classname="java.util.List" ignore="true"/>
<%
    if(script != null) {
        ... include script
    }
%>

JSTL也可以在这里使用。

10-08 11:32