代码之家  ›  专栏  ›  技术社区  ›  Shane Courtrille

为什么将cssClass应用到s:label会在Struts 2中创建两个标签?

  •  0
  • Shane Courtrille  · 技术社区  · 14 年前

    有没有想过为什么。。。

    <s:label label="%{getText('userDetails')}" cssClass="headerLabel"/>
    

    结果。。

    <label class="label" for="">User Details:</label>
    <label id="" class="headerLabel"></label>
    
    2 回复  |  直到 14 年前
        1
  •  0
  •   Shane Courtrille    14 年前

    显然这就是 <s:label> 是的。不过,我无法将css应用到第一部分。

        2
  •  0
  •   Maurizio Cucchiara    14 年前

    您使用的struts是哪个版本(2.2.1)?

    <s:label label="%{getText('userDetails')}" cssClass="headerLabel" theme="simple"/>
    

    如果仍然不起作用,请在WEB-INF/classes/template/simple/application文件夹中创建一个名为label.ftl的新文件,其中包含以下内容:

    <label<#rt/>
    <#if parameters.id??>
     id="${parameters.id?html}"<#rt/>
    </#if>
    <#if parameters.cssClass??>
     class="${parameters.cssClass?html}"<#rt/>
    </#if>
    <#if parameters.cssStyle??>
     style="${parameters.cssStyle?html}"<#rt/>
    </#if>
    <#if parameters.title??>
     title="${parameters.title?html}"<#rt/>
    </#if>
    <#if parameters.for??>
     for="${parameters.for?html}"<#rt/>
    </#if>
    <#include "/${parameters.templateDir}/simple/common-attributes.ftl" />
    <#include "/${parameters.templateDir}/simple/dynamic-attributes.ftl" />
    ><#rt/>
    <#if parameters.nameValue??>
    <@s.property value="parameters.nameValue"/><#t/>
    </#if>
    </label>